Introducción a las API REST

 

 

 

Introduccion a las api rest 1

¿Qué es una API REST desde el punto de vista de un creador de una API REST y desde el punto de vista de un consumidor?

 

API significa Interfaz de programación de aplicaciones y es un término general que identifica diferentes cosas.

Vimos cómo el navegador puede ofrecer algunas API, en forma de funciones disponibles para nosotros.

Vimos cómo Node.js nos ofrece una API de programación con sus módulos por defecto.

API también significa otra cosa: crear un servicio que expone una funcionalidad específica, proporcionada a través de un servidor al que pueden acceder múltiples clientes.

En términos generales, actualmente tenemos dos categorías de API: API REST y API GraphQL.

Existen otros tipos de paradigmas de API, como SOAP por ejemplo, pero no son muy populares en el mundo de JavaScript.

En esta publicación hablaremos sobre las API REST.

Puntos finales

En una API REST, creamos una serie de puntos finales a los que un cliente puede acceder.

Digamos que queremos exponer una lista de personas. Podemos crear un punto final que responderá a la /people ruta .

Si nuestro servicio escucha en el dominio test.com, tendremos la test.com/peopleURL.

Este punto final proporcionará datos en cualquier formato, pero generalmente usamos JSON , un práctico formato basado en texto que se utiliza para comunicar datos entre dos servicios.

Este /peoplepunto final puede proporcionar una lista de nombres de personas y un nombre idpara cada persona. Este podría ser el idque usemos para almacenarlos en la base de datos, por ejemplo.

Nuestro sistema también puede exponer otro punto final, al que podemos llamar /person. Este acepta un idque identifica de forma única a una persona, como esto:/person/1

Nuestra API proporcionará más información sobre esa persona, por ejemplo, edad, correo electrónico, dirección.

Lo importante a destacar es que en el primer endpoint no teníamos ningún parámetro, pero esta vez tenemos uno.

Los parámetros se pueden enviar de distintas formas y no todos los puntos finales se utilizarán para enviar información desde el servidor. Algunos otros puntos finales se utilizarán para realizar acciones, como veremos a continuación.

Métodos

Mencioné que el /peoplepunto final devolverá la lista de personas en nuestro sistema.

Esto fue una simplificación y es hora de profundizar más.

Una API REST utiliza los principios del protocolo HTTP para proporcionar diferentes funcionalidades según el método HTTP utilizado: GET, POST, PUT, DELETE.

 

GETes el más común. Cuando un cliente llama a nuestro punto final de API con un método GET, indica que desea leer datos.

GET /peopleDevolverá una lista de personas.

GET /person/1Devolverá los detalles de una persona.

Cuando el método HTTP es POST, el significado es completamente diferente. El punto final será el mismo, pero la acción requerida será otra.

Nosotros, como creadores de API, definimos cuál es el significado.

Por ejemplo, podríamos crear un POST /personpunto final que, cuando se llama, crea una nueva persona en la base de datos.

Recibe datos del cliente, en un formato predefinido que podemos elegir. Pronto veremos un ejemplo realizado con Express.

GETy POSTson los 2 verbos principales utilizados.

A veces usamos PUTy DELETE: PUTa veces se usa para actualizar un recurso, como cambiar la dirección de una persona. DELETEse usa para eliminar un recurso. Diets, plans and health

Otras veces, POSTse usa para todo lo que no es lectura, donde GETse usa.

Tenemos libertad en esta elección.

Por recurso entendemos una entidad, como personas en plural en el caso de /people, o una sola persona en el caso de /person.

Puntos finales de API de nombres

Mira como lo usé /peopley /personarriba.

Esos son sustantivos .

Se considera una buena práctica utilizar sustantivos para los puntos finales y utilizar métodos HTTP para señalar la acción.

Para actualizar una persona se utiliza una POSTsolicitud al /personpunto final.

Si desea crear una API para enviar un mensaje a una persona, deberá realizar una POSTsolicitud utilizando un /messagepunto final, pasándole datos para identificar a la persona y el mensaje que desea enviar.

Una API REST no tiene estado

Una API REST no tiene estado.

Esto significa que no tiene memoria entre diferentes solicitudes.

La mayoría de las API que puedes encontrar implementan un mecanismo de clave API que sirve como una forma de rastrear quién llama a una API y proporciona una forma de monitorear el uso y forzar límites.

Una API también se puede proteger mediante un mecanismo de inicio de sesión y contraseña. En este caso, un proceso de autenticación de API deberá tener en cuenta un proceso de enlace que proporcione un token que luego se debe enviar en cada solicitud futura para identificar al usuario y la autorización correcta.

Respuestas

Una llamada API devolverá una respuesta al usuario, en dos formas: un código de estado de respuesta HTTP y un cuerpo de respuesta HTTP.

Cada solicitud HTTP tiene un código de estado.

Tenemos algunas convenciones con respecto al código de estado de respuesta HTTP: cuando se utiliza el navegador para abrir una página web, la página devolverá un 200 OKcódigo de estado. Si no se encuentra la página, se devolverá un 404 NOT FOUNDcódigo de estado.

Lo mismo funciona para nuestras API.

Los más comunes son:

  • 200 OK:esta es la respuesta estándar para solicitudes HTTP exitosas.
  • 201 Created: Normalmente, se trata de una respuesta a una solicitud POST. La solicitud se ha completado y se ha creado un nuevo recurso.
  • 400 Bad RequestDebido a un error de solicitud que se generó en el cliente, el servidor no puede procesar la solicitud. Los errores pueden incluir una solicitud mal formada, un tamaño demasiado grande para ser manejado u otros.
  • 401 UnauthorizedSe envía cuando se requiere autenticación y el cliente no está autorizado
  • 403 ForbiddenEl recurso no está disponible por diversos motivos. Si el motivo es la autenticación, es preferible el código de estado 401 No autorizado.
  • 404 Not FoundNo se pudo encontrar el recurso solicitado.
  • 405 Method Not AllowedEl recurso no está disponible a través de ese método HTTP, pero podría estarlo con otro.
  • 500 Internal Server ErrorUn mensaje de error de servidor genérico que aparece cuando se encuentra una condición inesperada y no hay ningún mensaje más específico adecuado.

Puede encontrar la lista completa en La lista de códigos de estado HTTP . Lo que debe tener en cuenta es que cuando crea una API, siempre debe devolver el código de estado correcto para informar a sus clientes.

El cuerpo de la respuesta suele ser una respuesta JSON con los datos solicitados o un mensaje de error.

Los detalles de cómo se construye el mensaje los decide usted, el creador de la API, o quien creó la API.




Tal vez te puede interesar:

  1. Introducción a React
  2. Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
  3. Cómo cambiar el valor de un nodo DOM
  4. Cómo comprobar si un elemento DOM tiene una clase

Introducción a las API REST

¿Qué es una API REST desde el punto de vista de un creador de una API REST y desde el punto de vista de un consumidor? Puntos finalesMétodosPuntos finales

programar

es

https://aprendeprogramando.es/static/images/programar-introduccion-a-las-api-rest-2299-0.jpg

2024-11-05

 

Introduccion a las api rest 1
Introduccion a las api rest 1

Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente

 

 

Update cookies preferences