2.4. API REST
2.4. API REST
DEPARTAMENTO DE COMPUTACIÓN
Ingeniería en Sistemas de Información
Asignatura:
Programación Web I
Año Académico: 2024 Grupo: SI2V Semestre: II
API REST
Una API REST (Application Programming Interface Representational State Transfer) es un estilo de arquitectura
para diseñar interfaces de programación de aplicaciones (APIs) que permiten la comunicación entre sistemas a
través de protocolos web, como HTTP.
Principios clave de una API REST:
1. Recursos: En REST, los datos se consideran recursos, y cada recurso se identifica mediante una URL única.
Por ejemplo, en una API de gestión de usuarios, el recurso de un usuario específico podría ser identificado
por una URL como https://api.ejemplo.com/usuarios/123.
2. Métodos HTTP: REST utiliza métodos estándar de HTTP para realizar operaciones sobre los recursos:
3. Sin estado: Las llamadas a una API REST son sin estado, lo que significa que cada solicitud del cliente al
servidor debe contener toda la información necesaria para entender y procesar la solicitud. El servidor no
almacena ningún estado de la solicitud anterior.
4. Representaciones: Los recursos pueden tener múltiples representaciones, como JSON o XML, que se
transfieren entre el cliente y el servidor. El cliente y el servidor acuerdan el formato de los datos a través de
cabeceras HTTP.
5. Interfaz uniforme: REST establece una interfaz uniforme para la interacción con los recursos, facilitando la
comprensión y la interoperabilidad entre diferentes partes de la arquitectura.
1
Las APIs REST son muy comunes en el desarrollo de aplicaciones web y móviles debido a su simplicidad,
escalabilidad y flexibilidad.
La estructura de una API REST sigue ciertos principios y convenciones que permiten que sea intuitiva, fácil de usar y
escalable. Aquí te explico cómo se estructura:
1. Base URL
La Base URL es la dirección raíz de la API, sobre la cual se construyen todas las rutas para acceder a los recursos.
Por ejemplo:
https://api.ejemplo.com/v1/
2. Recursos
Los recursos son los elementos o entidades a los que la API proporciona acceso, y cada recurso tiene su propia URL.
Los recursos suelen representarse en plural, como usuarios, articulos, productos, etc.
Ejemplo:
o https://api.ejemplo.com/v1/usuarios
o https://api.ejemplo.com/v1/productos
3. Métodos HTTP
Los métodos HTTP se utilizan para realizar diferentes operaciones sobre los recursos. Aquí te dejo los más
comunes:
GET: Recuperar uno o más recursos.
4. Rutas de Acceso
Las rutas se construyen a partir de la Base URL seguida por el recurso y, opcionalmente, un identificador único (ID)
del recurso.
Ejemplos:
5. Parámetros de consulta
Los parámetros de consulta se utilizan para filtrar, ordenar o paginar los resultados. Se agregan a la URL después de
un signo de interrogación ?.
Ejemplos:
2
200 OK: Solicitud exitosa.
204 No Content: Solicitud exitosa pero sin contenido que devolver (usado con DELETE).
7. Formato de Respuesta
Las respuestas de una API REST suelen ser en formato JSON (JavaScript Object Notation) o XML, aunque JSON es
más común.
Ejemplo de respuesta JSON:
{
"id": 123,
"nombre": "Juan Pérez",
"email": "[email protected]"
}
8. Autenticación y Autorización
Las APIs REST suelen requerir autenticación para asegurar el acceso a los recursos. Algunos métodos comunes de
autenticación son:
Tokens de API: Un token único enviado en las cabeceras HTTP.
OAuth: Un estándar de autorización que permite acceso limitado a los recursos del usuario.
Ejemplo:
9. Versionado
El versionado permite que la API evolucione sin romper la compatibilidad con versiones anteriores. Las versiones se
incluyen en la Base URL.
Ejemplo:
o https://api.ejemplo.com/v1/usuarios
o https://api.ejemplo.com/v2/usuarios
Resumen
La estructura de una API REST es intuitiva y sigue principios estándar para facilitar su uso y escalabilidad. Las rutas
bien definidas, el uso de métodos HTTP, el formato de respuesta consistente, y la implementación de autenticación
y autorización son claves para el diseño efectivo de una API REST.