Arquitectura API REST

Creación de una API

Qué es una API

¿Para qué necesitamos una API?

Provedores de APIs

Qué significa API REST

Como funciona REST

Llamadas al API

GET <http://www.formandome.es/api/cursos/1>
200 OK HTTP/1.1
404 NOT FOUND HTTP/1.1

Creación de recursos

<http://eventos.com/api/eventos/3/comentarios>

Respuesta a la creación de recursos

Actualización de recursos

Eliminar recursos

Arquitectura REST

Reglas de una arquitectura REST

Interfaz Uniforme

Interfaz uniforme: mensajes descriptivos

Peticiones sin estado

GET mi_url/empleados/1234
DELETE mi_url/empleados/1234

Cacheable

Separación de cliente y servidor

Sistema de capas

Código bajo demanda (opcional)

Consejos para elaborar una API REST

Versiones del API

GET /v1/geocode HTTP/1.1
Host: api.geocod.io

GET /v2/geocode HTTP/1.1
Host: api.geocod.io

HTTP verbs

Nombre de los recursos

Códigos de estado

Formato de salida

GET /v1/geocode HTTP/1.1
Host: api.geocod.io
Accept: application/json

*GET /v1/geocode HTTP/1.1
Host: api.geocod.io
Accept: application/xml

Solicitudes AJAX entre dominios

Problemática

Técnicas para evitar las restricciones de seguridad

CORS

Autenticación y validación en API REST

Métodos de autenticación

- **Basada en tokens**, se confía en un token firmado que se envía al servidor en cada petición

https://juanda.gitbooks.io/webapps/content/api/cookie-token-auth.png

¿Qué es un token?

Beneficios de usar tokens

OAuth

Terminología de OAuth

Flujo en OAuth


Revision #1
Created 19 April 2023 18:05:37 by molombo
Updated 19 April 2023 18:06:36 by molombo