DataSunrise Logra el Estado de Competencia en AWS DevOps en AWS DevSecOps y Monitoreo, Registro, Rendimiento

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

Desbloqueando el Poder de la Virtualización de Datos: Simplificando el Acceso y la Integración de Datos

Desbloqueando el Poder de la Virtualización de Datos: Simplificando el Acceso y la Integració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.

Countryx
United States
United Kingdom
France
Germany
Australia
Afghanistan
Islands
Albania
Algeria
American Samoa
Andorra
Angola
Anguilla
Antarctica
Antigua and Barbuda
Argentina
Armenia
Aruba
Austria
Azerbaijan
Bahamas
Bahrain
Bangladesh
Barbados
Belarus
Belgium
Belize
Benin
Bermuda
Bhutan
Bolivia
Bosnia and Herzegovina
Botswana
Bouvet
Brazil
British Indian Ocean Territory
Brunei Darussalam
Bulgaria
Burkina Faso
Burundi
Cambodia
Cameroon
Canada
Cape Verde
Cayman Islands
Central African Republic
Chad
Chile
China
Christmas Island
Cocos (Keeling) Islands
Colombia
Comoros
Congo, Republic of the
Congo, The Democratic Republic of the
Cook Islands
Costa Rica
Cote D'Ivoire
Croatia
Cuba
Cyprus
Czech Republic
Denmark
Djibouti
Dominica
Dominican Republic
Ecuador
Egypt
El Salvador
Equatorial Guinea
Eritrea
Estonia
Ethiopia
Falkland Islands (Malvinas)
Faroe Islands
Fiji
Finland
French Guiana
French Polynesia
French Southern Territories
Gabon
Gambia
Georgia
Ghana
Gibraltar
Greece
Greenland
Grenada
Guadeloupe
Guam
Guatemala
Guernsey
Guinea
Guinea-Bissau
Guyana
Haiti
Heard Island and Mcdonald Islands
Holy See (Vatican City State)
Honduras
Hong Kong
Hungary
Iceland
India
Indonesia
Iran, Islamic Republic Of
Iraq
Ireland
Isle of Man
Israel
Italy
Jamaica
Japan
Jersey
Jordan
Kazakhstan
Kenya
Kiribati
Korea, Democratic People's Republic of
Korea, Republic of
Kuwait
Kyrgyzstan
Lao People's Democratic Republic
Latvia
Lebanon
Lesotho
Liberia
Libyan Arab Jamahiriya
Liechtenstein
Lithuania
Luxembourg
Macao
Madagascar
Malawi
Malaysia
Maldives
Mali
Malta
Marshall Islands
Martinique
Mauritania
Mauritius
Mayotte
Mexico
Micronesia, Federated States of
Moldova, Republic of
Monaco
Mongolia
Montserrat
Morocco
Mozambique
Myanmar
Namibia
Nauru
Nepal
Netherlands
Netherlands Antilles
New Caledonia
New Zealand
Nicaragua
Niger
Nigeria
Niue
Norfolk Island
North Macedonia, Republic of
Northern Mariana Islands
Norway
Oman
Pakistan
Palau
Palestinian Territory, Occupied
Panama
Papua New Guinea
Paraguay
Peru
Philippines
Pitcairn
Poland
Portugal
Puerto Rico
Qatar
Reunion
Romania
Russian Federation
Rwanda
Saint Helena
Saint Kitts and Nevis
Saint Lucia
Saint Pierre and Miquelon
Saint Vincent and the Grenadines
Samoa
San Marino
Sao Tome and Principe
Saudi Arabia
Senegal
Serbia and Montenegro
Seychelles
Sierra Leone
Singapore
Slovakia
Slovenia
Solomon Islands
Somalia
South Africa
South Georgia and the South Sandwich Islands
Spain
Sri Lanka
Sudan
Suriname
Svalbard and Jan Mayen
Swaziland
Sweden
Switzerland
Syrian Arab Republic
Taiwan, Province of China
Tajikistan
Tanzania, United Republic of
Thailand
Timor-Leste
Togo
Tokelau
Tonga
Trinidad and Tobago
Tunisia
Turkey
Turkmenistan
Turks and Caicos Islands
Tuvalu
Uganda
Ukraine
United Arab Emirates
United States Minor Outlying Islands
Uruguay
Uzbekistan
Vanuatu
Venezuela
Viet Nam
Virgin Islands, British
Virgin Islands, U.S.
Wallis and Futuna
Western Sahara
Yemen
Zambia
Zimbabwe
Choose a topicx
Información General
Ventas
Servicio al Cliente y Soporte Técnico
Consultas sobre Asociaciones y Alianzas
Información general:
info@datasunrise.com
Servicio al Cliente y Soporte Técnico:
support.datasunrise.com
Consultas sobre Asociaciones y Alianzas:
partner@datasunrise.com