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’operazione HTTPS (http) invia i dati da un messaggio MQTT a un'applicazione Web o a un servizio.
Requisiti
Questa operazione della regola presenta i seguenti requisiti:
-
È necessario confermare e abilitare gli endpoint HTTPS prima che il motore delle regole possa utilizzarli. Per ulteriori informazioni, consulta Utilizzo delle destinazioni delle regole degli argomenti HTTP.
Parametri
Quando si crea una AWS IoT regola con questa azione, è necessario specificare le seguenti informazioni:
url-
L'endpoint HTTPS in cui il messaggio viene inviato utilizzando il metodo HTTP POST. Se si utilizza un indirizzo IP al posto di un nome host, deve essere un IPv4 indirizzo. IPv6 gli indirizzi non sono supportati.
Supporta modelli di sostituzione: sì
confirmationUrl-
(Facoltativo) Se specificato, AWS IoT utilizza l'URL di conferma per creare una destinazione per la regola dell'argomento corrispondente. È necessario abilitare la destinazione della regola dell'argomento prima di utilizzarla in un'operazione HTTPS. Per ulteriori informazioni, consulta Utilizzo delle destinazioni delle regole degli argomenti HTTP. Se si utilizzano modelli di sostituzione, è necessario creare manualmente le destinazioni delle regole degli argomenti prima di poter utilizzare l'operazione
http.confirmationUrldeve essere un prefisso diurl.La relazione tra
urledconfirmationUrlè descritta come segue:-
Se
urlè codificato e nonconfirmationUrlviene fornito, trattiamo implicitamente ilurlcampo come.confirmationUrlAWS IoT crea una destinazione per le regole tematiche per.url -
Se
urleconfirmationUrlsono codificati,urldeve iniziare con.confirmationUrlAWS IoT crea una destinazione per le regole tematiche per.confirmationUrl -
Se
urlcontiene un modello di sostituzione, è necessario specificareconfirmationUrleurldeve cominciare conconfirmationUrl. SeconfirmationUrlcontiene modelli di sostituzione, è necessario creare manualmente le destinazioni delle regole dell'argomento prima di poter utilizzare l'operazionehttp. SeconfirmationUrlnon 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 richieste HTTP 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 quando il payload è in formato JSON. Altrimenti, è 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 di regole per connettersi all'URL dell'endpoint specificato nell'argomento
url. Attualmente, la versione 4 della firma è l'unico tipo di autenticazione supportato. Per ulteriori informazioni, vedere l'Autorizzazione HTTP.Supporta modelli di sostituzione: no
Esempi
Il seguente esempio JSON definisce una AWS IoT regola con un'azione HTTP.
{ "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}" } ] } } ] } }
Logica di ripetizione dell'operazione HTTP
Il motore AWS IoT delle regole ritenta l'azione HTTP 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.
-
Il servizio Web downstream o l'applicazione chiude la connessione TCP 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 stato HTTP diverso da 429, 500-599.
-
Nota
I costi standard di trasferimento dei dati
Consulta anche
-
Utilizzo delle destinazioni delle regole degli argomenti HTTP
-
Indirizza i dati AWS IoT Core direttamente dai tuoi servizi Web
nell'Internet of Things sul blog AWS