Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
HTTP
L'azione HTTPS (http
) invia i dati da un MQTT messaggio a un'applicazione o un servizio Web.
Requisiti
Questa operazione della regola presenta i seguenti requisiti:
-
È necessario confermare e abilitare gli HTTPS endpoint prima che il motore delle regole possa utilizzarli. Per ulteriori informazioni, consulta Utilizzo delle destinazioni delle regole HTTP tematiche.
Parametri
Quando crei una AWS IoT regola con questa azione, devi specificare le seguenti informazioni:
url
-
L'HTTPSendpoint a cui viene inviato il messaggio utilizzando il HTTP POST metodo. Se si utilizza un indirizzo IP al posto di un nome host, deve essere un IPv4 indirizzo. IPv6gli indirizzi non sono supportati.
Supporta modelli di sostituzione: sì
confirmationUrl
-
(Facoltativo) Se specificato, AWS IoT utilizza la conferma URL per creare una destinazione per la regola dell'argomento corrispondente. È necessario abilitare la destinazione della regola dell'argomento prima di utilizzarla in un'operazione HTTP. Per ulteriori informazioni, consulta Utilizzo delle destinazioni delle regole HTTP tematiche. Se si utilizzano modelli di sostituzione, è necessario creare manualmente le destinazioni delle regole degli argomenti prima di poter utilizzare l'operazione
http
.confirmationUrl
deve essere un prefisso diurl
.La relazione tra
url
edconfirmationUrl
è descritta come segue:-
Se
url
è codificato e nonconfirmationUrl
viene fornito, trattiamo implicitamente ilurl
campo come.confirmationUrl
AWS IoT crea una destinazione per le regole tematiche per.url
-
Se
url
econfirmationUrl
sono codificati,url
deve iniziare con.confirmationUrl
AWS IoT crea una destinazione per le regole tematiche per.confirmationUrl
-
Se
url
contiene un modello di sostituzione, è necessario specificareconfirmationUrl
eurl
deve cominciare conconfirmationUrl
. SeconfirmationUrl
contiene modelli di sostituzione, è necessario creare manualmente le destinazioni delle regole dell'argomento prima di poter utilizzare l'operazionehttp
. SeconfirmationUrl
non contiene modelli sostitutivi, AWS IoT crea una destinazione per le regole dell'argomento per.confirmationUrl
Supporta modelli di sostituzione: sì
-
headers
-
(Facoltativo) L'elenco delle intestazioni da includere nelle HTTP richieste all'endpoint. Ogni richiesta deve contenere le seguenti informazioni:
key
-
La chiave dell'intestazione.
Supporta modelli di sostituzione: no
value
-
Il valore dell'intestazione.
Supporta modelli di sostituzione: sì
Nota
Il tipo di contenuto predefinito è application/json when the payload is in JSON format. Otherwise, it is application/octet -stream. È possibile sovrascriverlo specificando il tipo di contenuto esatto nell'intestazione con il tipo di contenuto chiave (senza distinzione tra maiuscole e minuscole).
auth
-
(Facoltativo) L'autenticazione utilizzata dal motore delle regole per connettersi all'endpoint URL specificato nell'
url
argomento. Attualmente, la versione 4 della firma è l'unico tipo di autenticazione supportato. Per ulteriori informazioni, vedere HTTPAutorizzazione.Supporta modelli di sostituzione: no
Esempi
L'JSONesempio seguente definisce una AWS IoT regola con un'HTTPazione.
{ "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}" } ] } } ] } }
HTTPlogica di ripetizione delle azioni
Il motore AWS IoT delle regole ritenta l'HTTPazione in base alle seguenti regole:
-
Il motore delle regole tenta di inviare un messaggio almeno una volta.
-
Il motore delle regole effettua un massimo di due tentativi. Il numero massimo di tentativi è tre.
-
Il motore delle regole non effettua un nuovo tentativo se:
-
Il tentativo precedente ha fornito una risposta maggiore di 16.384 byte.
-
L'applicazione o il servizio Web downstream chiude la TCP connessione dopo il tentativo.
-
Il tempo totale per completare una richiesta con nuovi tentativi ha superato il limite di timeout della richiesta.
-
La richiesta restituisce un codice di HTTP stato diverso da 429, 500-599.
-
Nota
I costi standard di trasferimento dei dati
Consulta anche
-
Indirizza i dati direttamente dai AWS IoT Core tuoi servizi Web
nell'Internet of Things sul blog AWS