Logo Studenta

WEB SERVICES API RESTFUL

¡Este material tiene más páginas!

Vista previa del material en texto

GESTION Y DESARROLLO DE 
SERVICIOS WEB
Juan Carlos Araujo H
docenteibp@gmail.com
Semana 12
WEB SERVICES API RESTFUL 
¿Qué es una API?
• El término API proviene de 
interfaz de programación de 
aplicaciones, y consiste en 
una seríe de reglas que nos 
dicen como pueden 
comunicarse entre sí las 
aplicaciones y/o los 
dispositivos.
https://coffeebytes.dev/caracteristicas-basicas-de-una-api-rest/ https://www.imagar.com/wp-content/uploads/2019/10/queesunapi.png
¿Qué es una API?
• Una API es el intermediario de la mayoría de las aplicaciones modernas. API 
significa: Application Programming Interface (Interfaz de Programación de 
Aplicaciones). Vamos a desglosarla mirando cada una de sus partes:
Aplicación
Si tienes un teléfono 
inteligente, estás 
familiarizado con las 
aplicaciones 
(herramientas, juegos, 
redes sociales y otro 
softwares que usamos 
todos los días)
Programando
Programar es la forma 
en que los ingenieros 
crean todo el software 
que tanto facilitan 
nuestra vida.
Interfaz
Una interfaz es un límite 
común compartido por 
dos aplicaciones o 
programas que permiten 
que ambos se 
comuniquen entre sí.
https://content.breatheco.de/es/lesson/understanding-rest-apis
¿Qué es API?
• La palabra viene de Application Programming Interface, y no 
es más que un programa que permite que otros programas se 
comuniquen con un programa en específico, por ejemplo 
Facebook. 
• A diferencia de los web services, las API no necesariamente 
deben comunicarse entre una red, pueden usarse entre dos 
aplicaciones en una misma computadora.
https://codigonaranja.com/restful-web-service
URL: Imagen
https://edteam-
media.s3.amazonaws.com/infographics/original/84a53153-05a4-425f-
a7f0-2e4c195b4878.png
API WEB
Los métodos de la API de una aplicación web dependen 
completamente del propósito / negocio del sitio web:
• Si estás creando la API para un producto como Uber, algunos de 
sus métodos serán: registrarse, solicitar un viaje, calificar un 
conductor, cancelar un viaje, etc.
• Si estás creando una API para algo como AirBnB, algunos de sus 
métodos serán: listado de reservas, búsqueda de listado, cancelar 
viaje, etc.
https://content.breatheco.de/es/lesson/understanding-rest-apis
¿qué es REST?
• REST es una técnica de arquitectura 
de software, es decir, un conjunto de 
principios y patrones de 
comunicación que ayudan a crear 
una forma de pensar y construir las 
APIs.
• Este tipo de arquitectura se define 
por un conjunto de restricciones 
entre los elementos, componentes, 
conectores y datos usados. 
Características de REST
• Protocolo cliente/servidor sin estado: cada petición HTTP 
contiene toda la información necesaria para ejecutarla, lo que 
permite que ni cliente ni servidor necesiten recordar ningún 
estado previo para satisfacerla. 
• Las operaciones más importantes relacionadas con los datos en 
cualquier sistema REST y la especificación HTTP son cuatro: 
POST (crear), GET (leer y consultar), PUT (editar) y DELETE 
(eliminar).
Características de REST
• Los objetos en REST siempre se manipulan a partir de la URI. 
Es la URI y ningún otro elemento el identificador único de cada 
recurso de ese sistema REST. 
• Interfaz uniforme: para la transferencia de datos en un sistema 
REST, este aplica acciones concretas (POST, GET, PUT y 
DELETE) sobre los recursos, siempre y cuando estén 
identificados con una URI.
Características de REST
• Sistema de capas: arquitectura jerárquica entre los componentes. 
Cada una de estas capas lleva a cabo una funcionalidad dentro del 
sistema REST.
• Uso de hipermedios: Ese concepto llevado al desarrollo de páginas 
web es lo que permite que el usuario puede navegar por el conjunto 
de objetos a través de enlaces HTML. 
En el caso de una API REST, el concepto de hipermedia explica la capacidad 
de una interfaz de desarrollo de aplicaciones de proporcionar al cliente y al 
usuario los enlaces adecuados para ejecutar acciones concretas sobre los 
datos.
https://www.bbvaapimarket.com/es/mundo-api/api-rest-que-es-y-cuales-son-sus-ventajas-en-el-desarrollo-de-proyectos/
URI: ¿qué es el identificador de 
recursos uniforme?
• El URI (siglas de uniform resource identifier) o identificador 
uniforme de recursos (por su nombre en español) sirve para 
acceder a un recurso físico o abstracto por Internet. 
• Dependiendo de la situación, el recurso puede ser de muchos 
tipos: por ejemplo, un URI puede identificar tanto una página web 
como al remitente o al destinatario de un correo electrónico. Las 
aplicaciones utilizan este identificador único para interactuar con el 
recurso o consultar información sobre el mismo.
https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/uri-identificador-de-recursos-uniformes/
Ventajas que ofrece REST para el 
desarrollo
1. Separación entre el cliente y el servidor: el protocolo REST 
separa totalmente la interfaz de usuario del servidor y el 
almacenamiento de datos. Eso tiene algunas ventajas cuando 
se hacen desarrollos.
2. Visibilidad, fiabilidad y escalabilidad. La separación entre 
cliente y servidor tiene una ventaja evidente y es que cualquier 
equipo de desarrollo puede escalar el producto sin excesivos 
problemas. Se puede migrar a otros servidores o realizar todo 
tipo de cambios en la base de datos, siempre y cuando los 
datos de cada una de las peticiones se envíen de forma 
correcta.
Ventajas que ofrece REST para el 
desarrollo
3. La API REST siempre es independiente del tipo de plataformas o 
lenguajes: la API REST siempre se adapta al tipo de sintaxis o 
plataformas con las que se estén trabajando, lo que ofrece una 
gran libertad a la hora de cambiar o probar nuevos entornos dentro 
del desarrollo. 
Con una API REST se pueden tener servidores PHP, Java, Python 
o Node.js. 
Lo único que es indispensable es que las respuestas a las 
peticiones se hagan siempre en el lenguaje de intercambio de 
información usado, normalmente XML o JSON.
https://www.bbvaapimarket.com/es/mundo-api/api-rest-que-es-y-cuales-son-sus-ventajas-en-el-desarrollo-de-proyectos/
¿REST vs RESTful?
• ¿Qué es rest?, es una arquitectura 
para aplicaciones basadas en redes 
(como Internet), sus siglas significan 
REpresentational State Transfer y 
por otro lado RESTful web service o 
RESTful api, son programas 
basados en REST. Pero muchas 
veces se usan como sinónimos 
(REST y RESTful).
https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT3ezE5HVCDe-rNFFwklDID_h2E0889PfyBcQ&usqp=CAUhttps://codigonaranja.com/restful-web-service
¿Qué diferencias hay entre REST y 
SOAP?
• Aunque SOAP ha sido la opción preferida y elegida por muchas 
empresas, para otras resulta demasiado compleja y poco flexible. 
Por esta razón, se están comenzando a utilizar servicios basados 
en REST para mostrar cantidades de datos masivos.
• Ambas arquitecturas de información tienen sus 
nichos definidos, sin embargo es al parecer REST 
quien tendrá una mayor aceptación en el futuro…
REST vs. SOAP
https://www.chakray.com/es/que-diferencias-hay-entre-rest-y-soap/
El estándar REST
• REST funciona a través de HTTP - lo que significa que todo está basado en 
texto. Utiliza los famosos comandos GET, POST, PUT y DELETE para 
clasificar los métodos API.
Método Descripción
GET Se utiliza para leer el estado del servidor. Al ser una operación segura, puede 
ejecutarse varias veces sin riesgo de modificación de datos o corrupción
POST Los puristas de REST usan post solo para creación. Eso significa que cada vez que 
POSTEE algo en una API, estará creando un nuevo registro en la base de datos 
para eso.
PUT Es más usado para actualizar el estado en el servidor; Aunque también se puede 
utilizar para crear estado.
DELETE Se utiliza para eliminar datos en el servidor
https://content.breatheco.de/es/lesson/understanding-rest-apis
Algunos códigos de estado HTTP
Cuando se recibe una página HTML, también se recibe un código de 
estado HTTP (solo uno), en los web service RESTful, estos se usan 
parasaber el estado de la ejecución del servicio, y estos son algunos de 
los usados:
• 200 (Ok), cuando una operación fue exitosa.
• 201 (Created), cuando se creó un registro (¿recuerdan? Con el 
método POST)
• 403 (Forbidden), cuando intentamos leer un registro para el que no 
tenemos acceso, por ejemplo los datos del perfil de otro usuario.
• 404 (Not found), cuando intentamos leer un registro que no existe.
Referencias Bibliografica
• ASP.NET Web API
Build RESTful web applications and services on the .NET
framework
Joydip Kanjilal
Copyright © 2013 Packt Publishing
Referencias electrónicas
• Entendiendo las Rest Apis
https://content.breatheco.de/es/lesson/understanding-
rest-apis
• ¿Que es RESTful Web Service? y ¿qué es REST?
https://codigonaranja.com/restful-web-service
• What is REST?
https://www.codecademy.com/article/what-is-rest

Continuar navegando