HTTP - AWS IoT Core

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

HTTP

L'action HTTPS (http) envoie les données d'un MQTT message à une application ou un service Web.

Prérequis

Cette action réglementaire est assortie des exigences suivantes :

Paramètres

Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :

url

HTTPSPoint de terminaison auquel le message est envoyé à l'aide de la HTTP POST méthode. Si vous utilisez une adresse IP à la place d'un nom d'hôte, il doit s'agir d'une IPv4 adresse. IPv6les adresses ne sont pas prises en charge.

Prend en charge les modèles de substitution : Oui

confirmationUrl

(Facultatif) Si cela est spécifié, AWS IoT utilise la confirmation URL pour créer une destination de règle de sujet correspondante. Vous devez activer la destination de la règle de rubrique avant de l'utiliser dans une action HTTP. Pour de plus amples informations, veuillez consulter Utilisation des destinations de règles HTTP thématiques. Si vous utilisez des modèles de substitution, vous devez créer manuellement des destinations de règles de rubrique avant que l'action http puisse être utilisée. confirmationUrl doit être un préfixe de url.

La relation entre url et confirmationUrl est décrite par les éléments suivants :

  • S'il url est codé en dur et n'confirmationUrlest pas fourni, nous traitons implicitement le url champ comme le. confirmationUrl AWS IoT crée une destination de règle de sujet poururl.

  • Si url et confirmationUrl sont codés en dur, cela url doit commencer confirmationUrl par. AWS IoT crée une destination de règle de sujet pourconfirmationUrl.

  • Si url contient un modèle de substitution, vous devez spécifier confirmationUrl et url doit commencer par confirmationUrl. Si confirmationUrl contient des modèles de substitution, vous devez créer manuellement des destinations de règle de rubrique avant que l'action http puisse être utilisée. S'il confirmationUrl ne contient pas de modèles de substitution, AWS IoT crée une destination de règle de sujet pourconfirmationUrl.

Prend en charge les modèles de substitution : Oui

headers

(Facultatif) La liste des en-têtes à inclure dans les HTTP demandes adressées au point de terminaison. Chaque entête doit contenir les informations suivantes.

key

La clé de l'en-tête.

Prend en charge les modèles de substitution: Non

value

Valeur de l'en-tête.

Prend en charge les modèles de substitution: Oui

Note

Le type de contenu par défaut est application/json when the payload is in JSON format. Otherwise, it is application/octet -stream. Vous pouvez le remplacer en spécifiant le type de contenu exact dans l'en-tête avec le type de contenu clé (insensible à la casse).

auth

(Facultatif) Authentification utilisée par le moteur de règles pour se connecter au point de terminaison URL spécifié dans l'urlargument. Actuellement, Signature Version 4 est le seul type d'authentification pris en charge. Pour plus d'informations, consultez la section HTTPAutorisation.

Prend en charge les modèles de substitution : Non

Exemples

L'JSONexemple suivant définit une AWS IoT règle avec une HTTP action.

{ "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}" } ] } } ] } }

HTTPlogique de nouvelle tentative d'action

Le moteur de AWS IoT règles réessaie l'HTTPaction conformément aux règles suivantes :

  • Le moteur de règles essaie d'envoyer un message au moins une fois.

  • Le moteur de règles effectue au plus deux nouvelles tentatives. Le nombre maximum de nouvelles tentatives est trois.

  • Le moteur de règles n'effectue pas de nouvelle tentative si :

    • L'essai précédent a fourni une réponse de plus de 16 384 octets.

    • Le service Web ou l'application en aval ferme la TCP connexion après l'essai.

    • Le temps total d'exécution d'une demande avec tentatives a dépassé la limite de temporisation de la demande.

    • La demande renvoie un code d'HTTPétat autre que 429, 500-599.

Note

Les coûts standard de transfert de données s'appliquent aux nouvelles tentatives.

Consultez aussi