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à.
Demo sull'autenticazione reciproca CoreHTTP
Importante
Questa è una versione archiviata della FreeRTOS User Guide da utilizzare con la versione FreeRTOS 202210.00. Per l'ultima versione di questo documento, consulta la FreerTOS User Guide.
Introduzione
Il progetto dimostrativo CoreHTTP (Mutual Authentication) mostra come stabilire una connessione a un server HTTP utilizzando TLS con autenticazione reciproca tra il client e il server. Questa demo utilizza un'implementazione dell'interfaccia di trasporto basata su MBEDTLS per stabilire una connessione TLS autenticata da server e client e dimostra un flusso di lavoro di risposta alle richieste in HTTP.
Nota
Per configurare ed eseguire le demo di FreerTOS, segui i passaggi indicati. Guida introduttiva a FreerTOS
Funzionalità
Questa demo crea una singola attività applicativa con esempi che mostrano come completare quanto segue:
-
Connect al server HTTP sull' AWS IoT endpoint.
-
Invia una richiesta POST.
-
Ricevi la risposta.
-
Disconnettiti dal server.
Dopo aver completato questi passaggi, la demo genera un output simile alla schermata seguente.

La AWS IoT console genera un output simile alla schermata seguente.

Organizzazione del codice sorgente
Il file sorgente della demo è denominato http_demo_mutual_auth.c
e può essere trovato nella
directory e sul GitHubfreertos
/demos/coreHTTP/
Connessione al server AWS IoT HTTP
La connectToServerWithBackoffRetriesRetryUtils_BackoffAndSleep
funzione fornisce valori di timeout che aumentano esponenzialmente e restituisce RetryUtilsRetriesExhausted
quando è stato raggiunto il numero massimo di tentativi. La connectToServerWithBackoffRetries
funzione restituisce uno stato di errore se la connessione TLS al broker non può essere stabilita dopo il numero di tentativi configurato.
Invio di una richiesta HTTP e ricezione della risposta
La funzione prvSendHttpRequestHTTPClient_Send
.