Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Demostración de la autenticación mutua de coreHTTP
importante
Esta demostración está alojada en el Amazon-FreeRTOS repositorio, que está en desuso. Recomendamos empezar por aquí al crear un nuevo proyecto. Si ya tiene un proyecto de Freertos existente basado en el Amazon-FreeRTOS repositorio ahora obsoleto, consulte la. Amazon-FreeRTOS Guía de migración del repositorio de Github
Introducción
El proyecto de demostración coreHTTP (Autenticación mutua) muestra cómo establecer una conexión con un servidor HTTP mediante TLS con autenticación mutua entre el cliente y el servidor. Esta demostración utiliza una implementación de interfaz de TLS-based transporte integrada para establecer una conexión TLS autenticada por el servidor y el cliente, y muestra un flujo de trabajo de solicitud y respuesta en HTTP.
nota
Para configurar y ejecutar las demostraciones de FreeRTOS, siga los pasos que se indican en Introducción a FreeRTOS.
Funcionalidad
Esta demostración crea una tarea de aplicación única con ejemplos que muestran cómo realizar lo siguiente:
-
Conéctese al servidor HTTP del AWS IoT punto final.
-
Enviar una solicitud POST.
-
Recibir la respuesta.
-
Desconectarse del servidor.
Tras completar estos pasos, la demostración genera una salida similar a la de la siguiente captura de pantalla.
La AWS IoT consola genera un resultado similar al de la siguiente captura de pantalla.
Organización del código fuente
El archivo fuente de la demostración lleva un nombre http_demo_mutual_auth.c y se encuentra en el directorio y en el GitHubfreertos/demos/coreHTTP/
Conectándose al AWS IoT Servidor HTTP
La ToServerWithBackoffRetries función de conexiónRetryUtils_BackoffAndSleep proporciona valores de tiempo de espera que aumentan exponencialmente y devuelve RetryUtilsRetriesExhausted cuando se alcanza el número máximo de intentos. La función connectToServerWithBackoffRetries devuelve un estado de error si no se puede establecer la conexión TLS con el agente tras el número de intentos configurado.
Envío de una solicitud HTTP y recepción de la respuesta
La SendHttpRequest función prvHTTPClient_Send.