翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
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
がハードコードされており、 が指定されていない場合confirmationUrl
、url
フィールドは暗黙的に として扱われますconfirmationUrl
。 は のトピックルールの送信先 AWS IoT を作成しますurl
。 -
url
とconfirmationUrl
がハードコードされている場合、 は で始まるurl
必要がありますconfirmationUrl
。 は のトピックルールの送信先 AWS IoT を作成しますconfirmationUrl
。 -
url
に置換テンプレートが含まれている場合は、confirmationUrl
を指定し、url
はconfirmationUrl
で始まる必要があります。confirmationUrl
に置換テンプレートが含まれている場合、http
アクションを使用する前に手動でトピックルールの送信先を作成する必要があります。confirmationUrl
に置換テンプレートが含まれていない場合、 は のトピックルールの送信先 AWS IoT を作成しますconfirmationUrl
。
置換テンプレートをサポート: はい
-
headers
-
(オプション) エンドポイントへのHTTPリクエストに含めるヘッダーのリスト。各ヘッダーには、以下の情報が必要です。
注記
デフォルトのコンテンツタイプは application/json when the payload is in JSON format. Otherwise, it is application/octet-stream です。キー content-type (大文字と小文字を区別しない) でヘッダー内の正確なコンテンツタイプを指定することで、上書きできます。
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アクションを再試行します。
-
ルールエンジンは、1 回以上メッセージの送信を試みます。
-
ルールエンジンは、最大で 2 回再試行します。最大試行回数は 3 回です。
-
次の場合、ルールエンジンは再試行を試行しません。
-
前回の試行で 16,384 バイトを超える応答が提供された場合。
-
ダウンストリームウェブサービスまたはアプリケーションは、試行後にTCP接続を閉じます。
-
再試行を含むリクエストを完了するための合計時間が、リクエストタイムアウト制限を超えた場合。
-
リクエストは、429、500~599 以外のHTTPステータスコードを返します。
-
注記
再試行には、標準データ転送コスト
関連情報
-
ブログの「モノのインターネット AWS」で、 からウェブサービス AWS IoT Core にデータを直接ルーティング
する