Xamarin Integrado a Web Api REST
Xamarin Integrado con Web Api REST
La integración de un servicio web en una aplicación es un escenario común en los días presentes. La simplicidad de REST ha contribuido a que sea el método principal para acceder a los servicios web en aplicaciones móviles. En este blog se muestra cómo consumir un servicio web ApiREST desde una aplicación Xamarin.Forms.
REST (REpresentational State Transfer), es un tipo de arquitectura de desarrollo web que se apoya totalmente en el estándar HTTP. Nos permite crear servicios y aplicaciones que pueden ser usadas por cualquier dispositivo o cliente que entienda HTTP, por lo que es increíblemente más simple y convencional que otras alternativas que se han usado en los últimos diez años como SOAP y XML-RPC.
Podríamos considerar REST como un framework para construir aplicaciones web respetando HTTP. Por lo tanto REST es el tipo de arquitectura más natural y estándar para crear APIs para servicios orientados a Internet.
Como regla principal REST no guarda estado en el servidor, toda la información que se requiere para mostrar la información que se solicita debe estar en la consulta por parte del cliente. Al no guardar estado, REST nos da mucho juego, ya que podemos escalar mejor sin tener que preocuparnos de temas como el almacenamiento de variables de sesión e incluso, podemos jugar con distintas tecnologías para servir determinadas partes o recursos de una misma API.
HTTP (HyperText Transfer Protocol), es el protocolo de comunicación que permite la transferencia de información en la Web. Define una serie predefinida de métodos de petición (algunas veces referido como «verbos»). Cada método indica la acción que desea que se efectúe sobre el recurso identificado, los verbos más conocidos son:
GET Recupera datos del servicio web.
POST Crea un nuevo elemento de datos en el servicio web.
PUT Actualiza un elemento de datos en el servicio web.
DELETE Elimina un elemento de datos en el servicio web.
Una Web API integrada con REST es llamada normalmente RESTful API, y se define mediante:
– Una URI base (Dirección de la API).
– Métodos HTTP, como GET, POST, PUT, DELETE.
– Soporte para los datos, tales como JavaScript Object Notation (JSON).
Los servicios web RESTful suelen utilizar mensajes JSON para devolver los datos al cliente. JSON es un formato de intercambio de datos basado en texto con consumo de ancho de banda reducido al enviar datos. La aplicación de ejemplo utiliza el NUGET NewtonSoft JSON.NET con el fin de serializar y deserializar mensajes.
Para enviar y recibir solicitudes a través de HTTP usaremos el NUGET FubarCoder.RestSharp.Portable el cual nos proporciona un RestClient con la funcionalidad para el envío de peticiones HTTP y recibir respuestas HTTP desde un URI de recurso identificado. Each request is sent as an asynchronous operation. Cada solicitud se envía como una operación asíncrona.
Para el manejo de la arquitectura MVVM usaremos el NUGET Autofac el cual se encargara de la creación y carga de las vistas y modelos de vista a través de Module y ContainerBuilder.
Para el manejo y navegación de ventanas usaremos Page e INavigation de Xamarin.Forms.
GitHub Codigo de la aplicacion Xamarin
Julio Cesar Ruperti Ortiz
Alumno del curso Microsoft MCSD.
Tajamar
Año académico 2015-2016
Hola tengo un problema porque no sé o no tengo bien claro como conectar mi app iOS y Android, tu podrías ayudarme por favor?Tengo una base de datos sencilla en MySQL y la quiero conectar.
Saludos
Buenas, cual es tu duda exactamente?
A groso modo, si ya tienes la base de datos creada, create una API que ataque a la BBDD, y desde el Proyecto de Xamarin en la parte «Portable» ataca a los servicios de tu API, y ya funcionaría igual para cualquier plataforma que tengas en el proyecto(iOS, Android, Windows Phone o UWP