El Protocolo de Transferencia de Hipertexto (HTTP) es el protocolo de red cliente-servidor que te permite navegar por la World Wide Web. Cada vez que navegas por la web, tu navegador envía mensajes de solicitud HTTP para páginas HTML, imágenes, scripts y hojas de estilo. Los servidores web manejan estas solicitudes devolviendo mensajes de respuesta que contienen el recurso solicitado, completando el ciclo de solicitud-respuesta HTTP.
En el Internet de las Personas, navegamos por internet a través de navegadores web y pantallas utilizando solicitudes HTTP que reciben una respuesta en forma de datos HTML. Por el contrario, en el Internet de las Cosas, los dispositivos están conectados a internet pero están limitados en términos de batería, interfaces visuales y potencia de procesamiento. Al igual que el Internet de las Personas, el Internet de las Cosas también necesita una forma de comunicarse con internet. Conectar dispositivos del Internet de las Cosas a internet se hace utilizando "Interfaces de Programación de Aplicaciones" o APIs. Las APIs utilizadas en la web existen como un puente entre el Internet de las Personas y el Internet de las Cosas. Utilizando APIs, tus dispositivos pueden conectarse e interactuar con la web.
Además, las APIs son conocidas por ser "RESTful". Esto significa, entre otras cosas, que la API habla HTTP (el mismo protocolo que usan los navegadores para comunicarse con las páginas web). Utilizando una API RESTful, tus datos utilizarán un método HTTP para gestionar datos entre el cliente y el servidor (aquí el cliente es el dispositivo). Para una referencia específica a la Documentación de la API RESTful, consulta la documentación de la API de Ubidots para aprender más sobre la estructura de los mensajes de solicitud y su correspondiente mensaje de respuesta.
En esta guía describimos algunas herramientas disponibles para simular solicitudes HTTP de un cliente a un servidor como Ubidots. ¡Vamos a empezar! :)
Herramientas para simular solicitudes HTTP
Existen cientos de herramientas disponibles para generar respuestas HTTP, pero en esta guía te mostraremos solo las 4 principales que hemos encontrado más confiables. Es importante notar que existen muchas herramientas para generar respuestas HTTP. Estas incluyen:
Herramientas en línea
Herramientas de escritorio
Herramientas del navegador
Herramientas complementarias del navegador
Herramientas de Solicitud como Servicio
La herramienta de solicitud HTTP más común son las herramientas de solicitud en línea. Estas herramientas son fáciles de usar y producen resultados limpios. No son necesariamente las mejores herramientas porque están limitadas a las solicitudes HTTP básicas y, por lo tanto, no pueden ejecutar scripts, generar informes o crear conexiones de socket web. Pero, como son las herramientas de solicitud HTTP más comunes, consideramos que es mejor dar una introducción a las herramientas más comúnmente usadas antes de ser más específicos.
Los Tres Mejores
Antes de escribir esta publicación, pregunté al Equipo de Desarrollo de Ubidots cuáles de todas las herramientas disponibles para generar solicitudes HTTP se utilizan más comúnmente a diario. Comparando las respuestas del equipo llegamos a estos #Top3
1. Postman
Es una herramienta completa para el desarrollo de API. Puedes obtener Postman desde la Chrome Web Store como extensión, o descargar la aplicación aquí. Postman es de código abierto para Mac, Windows y Linux.
Postman fue diseñado desde cero para apoyar todos los aspectos del desarrollo de API. Las aplicaciones de Postman están construidas sobre una capa subyacente única, lo que garantiza un rendimiento y experiencia de usuario consistentes. Postman también refleja tu flujo de trabajo de desarrollo de API existente; tiene funciones de ejecución, prueba, documentación y monitoreo, diseñadas para trabajar en conjunto y hacer tu flujo de trabajo actual rápido, conciso y simple.
2. Insomnia REST Client
Es un conjunto de herramientas HTTP potente, en una aplicación intuitiva. Puedes obtener Insomnia desde la Chrome Web Store como extensión, o descargar la aplicación aquí. Insomnia REST client es gratis y de código abierto para Mac, Windows y Linux.
Insomnia te permite crear solicitudes HTTP, especificar URL, payload, headers y autorización, todo en un solo lugar. También puedes ver toda la transacción, obtener detalles sobre cada respuesta, ver el código de estado, cuerpo, encabezado, cookies y mucho más.
Insomnia REST Client incluso te permite organizar todo, crear espacios de trabajo o carpetas, arrastrar y soltar solicitudes, y fácilmente importar y exportar tus datos.
3. Advanced REST Client (Chrome)
Esta herramienta permite una depuración de solicitudes más avanzada. Al igual que Postman, te permite construir una solicitud proporcionando el tipo de solicitud y la URL. Sin embargo, también te permite implementar tipos de solicitud personalizados, ingresar encabezados en bruto y definir una cadena de parámetros personalizada.
Puedes guardar la solicitud haciendo clic en el botón Guardar en la parte superior de la pantalla y agrupar múltiples solicitudes bajo un solo proyecto. O puedes almacenar solicitudes en Google Drive y ver un historial de solicitudes haciendo clic en Historial en la barra lateral.
Además de las solicitudes HTTP, Advanced REST Client también admite conexiones WebSocket. En el menú de la izquierda, selecciona Socket e ingresa la URL del servidor WebSocket. Si la conexión es exitosa, puedes transmitir mensajes hacia y desde el servidor sin esfuerzo.
Para comenzar con Advanced REST Client, haz clic aquí.
Resultados
Ahora que tienes el conocimiento de algunas herramientas para probar solicitudes HTTP, elige una de estas herramientas o cualquiera de las otras disponibles para ti y confirma tu comunicación cliente-servidor hoy mismo.
Este artículo fue publicado originalmente en el Blog de Ubidots el 29 de junio de 2017.