기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
HTTP
HTTPS (http
) 작업은 MQTT 메시지의 데이터를 웹 애플리케이션 또는 서비스로 전송합니다.
요구 사항
이 규칙 작업은 다음 요구 사항을 충족해야 합니다.
-
규칙 엔진이 엔드포인트를 사용하려면 먼저 HTTPS 엔드포인트를 확인하고 활성화해야 합니다. 자세한 내용은 HTTP 주제 규칙 대상 작업 단원을 참조하십시오.
파라미터
이 작업으로 AWS IoT 규칙을 생성할 때는 다음 정보를 지정해야 합니다.
url
-
HTTP POST 메서드를 사용하여 메시지가 전송되는 HTTPS 엔드포인트입니다. 호스트 이름 대신 IP 주소를 사용하는 경우 주소여야 합니다IPv4. IPv6 주소는 지원되지 않습니다.
대체 템플릿 지원: 예
confirmationUrl
-
(선택 사항) 지정된 경우 확인을 AWS IoT 사용하여 일치하는 주제 규칙 대상을 URL 생성합니다. HTTP 작업에 사용하기 전에 주제 규칙 대상을 활성화해야 합니다. 자세한 내용은 HTTP 주제 규칙 대상 작업 단원을 참조하십시오. 대체 템플릿을 사용하는 경우 주제 규칙 대상을 수동으로 생성해야
http
작업을 사용할 수 있습니다.confirmationUrl
은url
의 접두사여야 합니다.url
과confirmationUrl
사이의 관계는 다음으로 설명됩니다.-
url
가 하드코딩되고 제공되지 않은 경우url
필드를 로 암시적으로 취급합니다confirmationUrl
.confirmationUrl
는 에 대한 주제 규칙 대상을 AWS IoT 생성합니다url
. -
url
및confirmationUrl
가 하드코딩된 경우 로 시작해야url
합니다confirmationUrl
. 는 에 대한 주제 규칙 대상을 AWS IoT 생성합니다confirmationUrl
. -
url
에 대체 템플릿이 포함되어 있는 경우confirmationUrl
을 지정하고url
은confirmationUrl
로 시작해야 합니다.confirmationUrl
에 대체 템플릿이 포함되어 있는 경우 주제 규칙 대상을 수동으로 생성해야http
작업을 사용할 수 있습니다.confirmationUrl
에 대체 템플릿이 포함되어 있지 않은 경우 는 에 대한 주제 규칙 대상을 AWS IoT 생성합니다confirmationUrl
.
대체 템플릿 지원: 예
-
headers
-
(선택 사항) 엔드포인트에 대한 HTTP 요청에 포함할 헤더 목록입니다. 각 헤더에는 다음 정보가 포함되어야 합니다.
참고
기본 콘텐츠 유형은 페이로드가 JSON 형식일 때 Application/json입니다. 그렇지 않으면 application/octet-stream입니다. 키 콘텐츠 유형(대/소문자 구분 없음)으로 헤더에서 정확한 콘텐츠 유형을 지정하여 덮어쓸 수 있습니다.
auth
-
(선택 사항) 규칙 엔진에서
url
인수에 URL 지정된 엔드포인트에 연결하는 데 사용하는 인증입니다. 현재 서명 버전 4는 유일하게 지원되는 인증 유형입니다. 자세한 내용은 HTTP 권한 부여를 참조하세요.대체 템플릿 지원: 아니오
예시
다음 JSON 예제에서는 HTTP 작업이 포함된 AWS IoT 규칙을 정의합니다.
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "http": { "url": "https://www.example.com/subpath", "confirmationUrl": "https://www.example.com", "headers": [ { "key": "static_header_key", "value": "static_header_value" }, { "key": "substitutable_header_key", "value": "${value_from_payload}" } ] } } ] } }
HTTP 작업 재시도 로직
AWS IoT 규칙 엔진은 다음 규칙에 따라 HTTP 작업을 재시도합니다.
-
규칙 엔진은 메시지를 한 번 이상 전송하려고 시도합니다.
-
규칙 엔진은 최대 두 번 재시도합니다. 최대 시도 횟수는 3회입니다.
-
규칙 엔진은 다음과 같은 경우 재시도를 수행하지 않습니다.
-
이전 시도에서 16,384바이트보다 큰 응답을 제공했습니다.
-
다운스트림 웹 서비스 또는 애플리케이션은 시도 후 TCP 연결을 닫습니다.
-
재시도로 요청을 완료하는 데 걸리는 총 시간이 요청 제한 시간 한도를 초과했습니다.
-
요청은 429, 500-599 이외의 HTTP 상태 코드를 반환합니다.
-
참고
표준 데이터 전송 비용
다음 사항도 참조하세요.
-
블로그의 사물 인터넷 AWS에서 에서 AWS IoT Core 웹 서비스로 직접 데이터 라우팅