DataSunrise está patrocinando AWS re:Invent 2024 en Las Vegas, por favor visítenos en el stand #2158 de DataSunrise

Llamadas API de Postman

Llamadas API de Postman

Introducción

Este artículo profundizará en los fundamentos de los servicios basados en la web, equipándote con el conocimiento y los ejemplos prácticos necesarios para volverte competente en realizar llamadas API con Postman.

Los servicios basados en la web han sido un componente crucial de las aplicaciones modernas durante más de dos décadas, evolucionando significativamente desde principios de los años 2000. Estos servicios dependen en gran medida de las API (Interfaces de Programación de Aplicaciones) para comunicarse e intercambiar datos. Como desarrolladores y testers, necesitamos herramientas robustas para interactuar con estas API de manera efectiva. Aquí es donde entra en juego Postman.

La interfaz web de DataSunrise se basa en llamadas API usando solicitudes POST basadas en RPC y JSON. Incluso cuando se ejecuta un comando en la Interfaz de Línea de Comandos (CLI), el JSON requerido se crea en función de las opciones del comando, que luego se pasa al backend para llamar al RPC requerido. Este proceso también se utiliza en la Consola Web para crear y gestionar reglas y otras configuraciones.

¿Qué es Postman?

Postman es una popular herramienta de desarrollo y prueba de API que simplifica el proceso de enviar solicitudes, analizar respuestas y gestionar API. Proporciona una interfaz fácil de usar para crear y ejecutar llamadas API, lo que facilita a los desarrolladores trabajar con servicios web.

Entendiendo los Servicios Basados en la Web

Los servicios basados en la web son aplicaciones o componentes que se comunican a través de redes utilizando protocolos web estándar. Estos servicios permiten que diferentes sistemas de software interactúen e intercambien datos de forma fluida, independientemente de sus tecnologías o plataformas subyacentes.

Características Clave de los Servicios Basados en la Web

  1. Independencia de Plataforma: Los servicios web se pueden acceder desde cualquier dispositivo o sistema operativo con conectividad a Internet.
  2. Interoperabilidad: Permiten que diferentes sistemas se comuniquen usando protocolos y formatos de datos estandarizados.
  3. Escalabilidad: Los servicios web pueden manejar múltiples clientes y crecer a medida que aumenta la demanda.
  4. Reutilizabilidad: Una vez creados, los servicios web pueden ser utilizados por múltiples aplicaciones, promoviendo la reutilización del código y la eficiencia.

¿Qué es RPC?

Remote Procedure Call (RPC) es un protocolo (JSON-RPC) que permite a un programa ejecutar un procedimiento o función en otra computadora como si fuera una llamada de procedimiento local. RPC es una de las formas más tempranas de computación distribuida y ha jugado un papel significativo en el desarrollo de servicios basados en la web.

Características Clave de RPC:

  1. Transparencia de Ubicación: El programa que llama no necesita saber la ubicación física del procedimiento llamado.
  2. Comunicación Síncrona: RPC generalmente sigue un modelo de solicitud-respuesta, donde el llamador espera la respuesta antes de continuar.
  3. Orientado a Procedimientos: RPC se enfoca en llamar a procedimientos o funciones específicos en sistemas remotos.

Entendiendo las API

Una Interfaz de Programación de Aplicaciones (API) es un conjunto de reglas, protocolos y herramientas que permiten que diferentes aplicaciones de software se comuniquen entre sí. Las API definen los métodos y formatos de datos que las aplicaciones pueden usar para solicitar e intercambiar información.

Tipos de API

  1. SOAP (Simple Object Access Protocol): Un protocolo que utiliza XML para intercambiar datos estructurados.
  2. REST (Representational State Transfer): Un estilo arquitectónico que usa métodos HTTP estándar para la comunicación.
  3. GraphQL: Un lenguaje de consulta para API que permite a los clientes solicitar datos específicos que necesitan.

Por Qué son Importantes las API

  1. Integración: Las API permiten que diferentes sistemas y aplicaciones trabajen juntos de manera fluida.
  2. Flexibilidad: Permiten a los desarrolladores acceder a funcionalidades específicas de otras aplicaciones sin necesidad de entender toda su base de código.
  3. Eficiencia: Las API pueden reducir el tiempo de desarrollo al proporcionar funcionalidades preconstruidas.
  4. Escalabilidad: Las API bien diseñadas pueden manejar cargas aumentadas y bases de usuarios crecientes.

Realizando Llamadas API con Postman

Ahora que entendemos los conceptos básicos de los servicios basados en la web y las API, exploremos cómo hacer llamadas API usando Postman. A través de dos ejemplos demostraremos diferentes tipos de llamadas API. https://jsonplaceholder.typicode.com es un sitio web de pruebas de API. Hay más en línea.

Método GET: Una solicitud para recuperar datos específicos de un servidor sin modificar ningún recurso, típicamente utilizada para obtener información y segura para llamadas repetidas.

Método POST: Una solicitud para enviar datos que serán procesados y almacenados por el servidor, a menudo utilizada para crear nuevos recursos o enviar datos de formularios, lo que puede modificar el estado del servidor.

Ejemplo 1: Realizando una Solicitud GET

Comencemos con una solicitud GET simple para recuperar datos de una API pública.

  1. Abre Postman y crea una nueva solicitud.
  2. Configura el método HTTP en GET.
  3. Introduzca la siguiente URL: https://jsonplaceholder.typicode.com/posts/1
  4. Haga clic en el botón “Enviar”.

Deberías recibir una respuesta similar a esta:

{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}

Este ejemplo demuestra lo fácil que es recuperar datos de una API usando Postman. La respuesta contiene un objeto JSON con información sobre una publicación específica.

Ejemplo 2: Realizando una Solicitud POST

Ahora, creemos un nuevo recurso usando una solicitud POST.

1. Crea una nueva solicitud en Postman.

2. Configura el método HTTP en POST.

3. Introduce la URL: https://jsonplaceholder.typicode.com/posts

4. Ve a la pestaña “Cuerpo”, selecciona “raw” y elige “JSON” del desplegable.

5. Introduce el siguiente JSON en el cuerpo:

jsonCopy{
  "title": "Mi Nueva Publicación",
  "body": "Este es el contenido de mi nueva publicación.",
  "userId": 1
}

Haga clic en el botón “Enviar”.

Deberías recibir una respuesta similar a esta:

jsonCopy{
  "title": "Mi Nueva Publicación",
  "body": "Este es el contenido de mi nueva publicación.",
  "userId": 1,
  "id": 101
}

Este ejemplo muestra cómo crear un nuevo recurso usando una solicitud POST. La API responde con el objeto creado, incluyendo un nuevo id asignado por el servidor.

Si el servidor usa HTTPS y tiene un certificado autofirmado, es posible que necesites desactivar la verificación del certificado SSL en la configuración de Postman.

Características Avanzadas de Postman para Llamadas API

Postman ofrece varias características avanzadas que pueden mejorar tu flujo de trabajo de prueba y desarrollo de API:

Variables de Entorno

Postman te permite crear variables de entorno para almacenar y reutilizar valores en múltiples solicitudes. Esto es particularmente útil para gestionar diferentes puntos finales de API o tokens de autenticación.

Para usar variables de entorno:

  1. Crea un nuevo entorno en Postman.
  2. Añade variables como base_url o api_key.
  3. Utiliza estas variables en tus solicitudes con llaves dobles, por ejemplo, {{base_url}}/api/endpoint.

Scripts Pre-solicitud

Puedes escribir código JavaScript que se ejecuta antes de que se envíe una solicitud. Esto es útil para generar datos dinámicos o configurar la autenticación.

Ejemplo de script pre-solicitud para generar una marca de tiempo:

pm.environment.set(“timestamp”, new Date().getTime());

Pruebas

Postman te permite escribir pruebas para tus llamadas API utilizando JavaScript. Estas pruebas pueden validar datos de respuesta, verificar códigos de estado, o realizar otras aseveraciones.

Ejemplo de script de prueba en la sección de Pruebas de una nueva solicitud GET a https://jsonplaceholder.typicode.com/posts/1?timestamp={{timestamp}}:

// Analiza la URL para extraer la marca de tiempo
var url = pm.request.url.toString();
var timestamp = url.split('timestamp=')[1];
// Registra la marca de tiempo
console.log("Marca de tiempo utilizada:", timestamp);
// Añade la marca de tiempo a la respuesta para visibilidad
var responseJson = pm.response.json();
responseJson.timestamp = timestamp;
// Establece la respuesta modificada para visualizar en Postman
pm.visualizer.set(JSON.stringify(responseJson, null, 2));
// Prueba para asegurar que la marca de tiempo fue enviada
pm.test("Solicitud enviada con marca de tiempo", function () {
    pm.expect(timestamp).to.not.be.undefined;
});

Revisa la pestaña “Resultados de Pruebas” para ver si la prueba pasó. También revisa la pestaña “Consola” para ver la marca de tiempo registrada. El cuerpo de la respuesta ahora incluirá el valor de la marca de tiempo.

Mejores Prácticas para Realizar Llamadas API con Postman

  1. Organiza Tus Solicitudes: Utiliza colecciones y carpetas para agrupar solicitudes relacionadas.
  2. Usa Control de Versiones: Postman te permite exportar colecciones. Almacénalas en sistemas de control de versiones como Git.
  3. Documenta Tus API: Usa la función de documentación de Postman para crear una documentación de API clara e interactiva.
  4. Automatiza las Pruebas: Utiliza el Collection Runner de Postman y la CLI de Newman para automatizar tus pruebas de API.
  5. Maneja la Autenticación Adecuadamente: Usa variables de entorno para almacenar información sensible como claves API o tokens.
  6. Monitorea el Rendimiento de la API: Configura monitores en Postman para rastrear el rendimiento y tiempo de actividad de la API.

Conclusión

Dominar las llamadas API de Postman es una habilidad esencial para los desarrolladores y testers modernos. Al entender los servicios basados en la web, las API y RPC, puedes aprovechar las poderosas características de Postman para agilizar tus procesos de desarrollo y prueba de API.

Hemos cubierto los conceptos básicos de realizar llamadas API, explorado características avanzadas de Postman y discutido mejores prácticas. Con este conocimiento, estás bien equipado para abordar interacciones API complejas y construir aplicaciones robustas e interconectadas.

Recuerda, la clave para volverte competente en llamadas API con Postman es la práctica. Experimenta con diferentes tipos de solicitudes, explora API públicas y proponte crear suites de pruebas completas para tus propias API.

A medida que continúes tu viaje en el desarrollo y prueba de API, considera explorar temas más avanzados como la seguridad de las API, la optimización del rendimiento y las pruebas de integración. El mundo de los servicios basados en la web es vasto y siempre está evolucionando, ofreciendo infinitas oportunidades de aprendizaje y crecimiento.

Siguiente

Virtualización de Datos

Virtualización de Datos

Más información

¿Necesita la ayuda de nuestro equipo de soporte?

Nuestros expertos estarán encantados de responder a sus preguntas.

Información general:
[email protected]
Servicio al Cliente y Soporte Técnico:
support.datasunrise.com
Consultas sobre Asociaciones y Alianzas:
[email protected]