Está en la página 1de 16

Desarrollo de Servicios

Web I
Unidad 4: Consumo de Servicios
Tema 5: Implementación y consumo de un servicio Web API
4.1. Tema 5: Implementación y consumo de
servicios Web API

2
Índice
4.1. Tema 5: Implementación y consumo de servicios web API
4.1.1. Web API y el modelo MVC
4.1.2. Verbos HTTP y convención para la implementación de servicios web
4.1.3. Habitando CORS en ASP.NET Web API
4.1.4. Implementando un servicio Web API y consumo desde una aplicación web con acceso a datos

3
Capacidades
• Crea una aplicación Web ASP.NET MVC para consumir un servicio Web
API para consultar y actualizar datos desde una base de datos en SQL
Server.

4
4.1. Implementación y consumo de servicios
Web API
• Las Interfaces de Programación de Aplicaciones (APIs por sus
siglas en inglés) son construcciones disponibles en los
lenguajes de programación que permiten a los desarrolladores
crear funcionalidades complejas de una manera simple.
• Estas abstraen el código más complejo para proveer una
sintaxis más fácil de usar en su lugar.

Fuente .- Tomado de https://blog.smeup.com/webelectron/

5
4.1.1. Web API y el modelo MVC
• La API de Web ASP.NET es un marco que hace que sea fácil de
construir servicios HTTP que llegan a una amplia gama de clientes,
incluyendo los navegadores y dispositivos móviles.
• La API de Web ASP.NET es una plataforma ideal para la creación de
aplicaciones cuyo propósito es exponer servicios bajo el protocolo
HTTP utilizando el estilo de la arquitectura REST (Representational
State Transfer).

Fuente .- Tomado de https://blog.smeup.com/webelectron/

6
4.1.1. Web API y el modelo MVC

Fuente.- Tomado de http://maninformatic.blogspot.pe/2013/12/diferencia-entre-mvc-y-web-api.html

7
4.1.2. Verbos HTTP y convención para la
implementación de servicios web
Acción Método HTTP URI relativa
Obtenga una lista de GET / Api / ServerData
ServerData

Obtén ServerData por tipo de GET / Api / ServerData / tipo / tipo


datos de Datos

Obtener una ServerData por GET / Api / ServerData /


ID Identificación

Obtén ServerData por la GET / Api / ServerData / ip / ip


máquina IP

8
4.1.2. Verbos HTTP y convención para la
implementación de servicios web
Acción Método HTTP URI relativa

Crear un ServerData fresca POST / Api / ServerData

Actualizar una ServerData PUT / Api / ServerData /


existente Identificación

Eliminar una ServerData DELETE / Api / ServerData /


existente Identificación

9
4.1.3. Habilitando CORS en ASP.NET Web API 2
• Cross Origin Resource Sharing (CORS) es un estándar W3C
que permite a un servidor configurar la política same-origin.
Utilizando CORS, un servidor puede permitir explícitamente
algunas peticiones de otros dominios (cross-origin) y, al
mismo tiempo, rechazar otras.
• La especificación CORS presenta varios encabezados HTTP
nuevos que permiten solicitudes de origen cruzado. Si un
navegador es compatible con CORS, establece estos
encabezados automáticamente.

Fuente .- Tomado de https://blog.smeup.com/webelectron/

10
4.1.3. Habilitando CORS en ASP.NET Web API 2
• Se tienen dos proyectos: uno llamado
"WebService", que aloja un controlador API web, y
el otro llamado "WebClient“ que llama a
WebService.
• Estas aplicaciones están alojadas en diferentes
dominios, una solicitud AJAX de WebClient a
WebService es una solicitud de origen cruzado.
• Si el servidor permite la solicitud, establece el
encabezado Access-Control-Allow-Origin. El valor
de este encabezado coincide con el encabezado
Origen o es el valor comodín "*", lo que significa
que se permite cualquier origen. Fuente .- Elaboración Propia

11
4.1.4. Implementando un servicio web API y consumo
desde una aplicación web con acceso a datos
• Muchos servicios HTTP también modelan las operaciones CRUD a través de REST o APIs similares a REST.
• Para implementar un proceso CRUD, Web API nos provee de cuatro métodos HTTP principales (GET, PUT, POST y
DELETE) se pueden asignar a operaciones CRUD de la siguiente manera:
• GET recupera la representación del recurso en un URI especificado. GET no debería tener efectos secundarios en
el servidor.

12
4.1.4. Implementando un servicio web API y consumo
desde una aplicación web con acceso a datos
• PUT actualiza un recurso en un URI especificado. PUT también se puede utilizar para crear un nuevo recurso en un
URI especificado, si el servidor permite a los clientes especificar nuevos URI.
• POST crea un nuevo recurso. El servidor asigna el URI para el nuevo objeto y devuelve este URI como parte del
mensaje de respuesta.
• DELETE elimina un recurso en un URI especificado.

13
Conclusiones
• La API de Web ASP.NET es una plataforma ideal para la creación de aplicaciones cuyo propósito es exponer
servicios bajo el protocolo HTTP utilizando el estilo de la arquitectura REST (Representational State Transfer).
• Los Verbos de HTTP son: GET, PUT, POST, DELETE.
• Muchos servicios HTTP también modelan las operaciones CRUD a través de REST o APIs similares a REST. Para
implementar un proceso CRUD, Web API nos provee de cuatro métodos HTTP principales (GET, PUT, POST y
DELETE) se pueden asignar a operaciones CRUD.
• GET recupera la representación del recurso en un URI especificada.
• PUT actualiza un recurso en un URI especificado. PUT también se puede utilizar para crear un nuevo recurso en un
URI especificado.
• POST crea un nuevo recurso.
• DELETE elimina un recurso en un URI especificado.

14
Referencias bibliográficas
• JetBrains (2021) Primeros pasos con ASP.NET Core y gRPC. Recuperado de
https://blog-jetbrains-com.translate.goog/dotnet/2021/07/19/getting-started-with-asp-net-core-and-grpc/?_x_tr_sl=
en&_x_tr_tl=es&_x_tr_hl=es&_x_tr_pto=sc

• Microsoft (2022) ASP.NET. Recuperado de http://www.asp.net


• Santi Macias (2021) NET5: Introducción a gRPC para implementar servicios en C# y llamarlo con BloomRPC.
Recuperado de https://enmilocalfunciona.io/net5-implementacion-de-servicios-grpc/
• Udemy (2022) C# Asp.Net Core 2.1 con Angular -Desarrolla SPA (Full Stack). Recuperado de
https://www.udemy.com/course/c-aspnet-core-con-angular-typescript-desarrolla-una-spa/

15
GRACIAS

SEDE INDEPENDENCIA SEDE BREÑA SEDE TRUJILLO


Av. Carlos Izaguirre 233 Av. Brasil 714 – 792 Calle Borgoño 361
Independencia – Lima (CC La Rambla – Piso 3) Trujillo
Teléfono: 633-5555 Breña – Lima Teléfono: (044) 60-2000
Teléfono: 633-5555

SEDE SAN JUAN DE LURIGANCHO SEDE LIMA CENTRO SEDE BELLAVISTA SEDE AREQUIPA
Av. Próceres de la Independencia 3023-3043 Av. Uruguay 514 Av. Mariscal Oscar R. Benavides 3866 – 4070 Av. Porongoche 500
San Juan de Lurigancho – Lima Cercado – Lima (CC Mall Aventura Plaza) (CC Mall Aventura Plaza)
Teléfono: 633-5555 Teléfono: 419-2900 Bellavista – Callao Paucarpata - Arequipa
Teléfono: 633-5555 Teléfono: (054) 60-3535

www.cibertec.edu.pe

También podría gustarte