Ir al contenido principal

Conectando RESTful Web Services en Android

Connecting  RESTful Web Services on Android




Antecedentes:
Existen dos filosofías a la hora de escribir servicios web:
  1. REST: utiliza XML, JSON y HTTP. Cada URL representa un objeto sobre el que puedes realizar POST,GET,PUT y DELETE (las operaciones típicas del HTTP).
  2. SOAP: es toda una infraestructura basada en XML. Donde cada objeto puede tener métodos definidos por el programador con los parámetros que sean necesarios.

Ventajas de REST
  1. Ligero: tranferencia de objetos JSON o XML.
  2. Resultados legibles.
  3. Fácil de implementar: no hacen falta herramientas específicas.

Ventajas de SOAP
  1. Fácil de consumir
  2. Rigido: tipado fuerte, sigue un contrato
  3. Herramientas de desarrollo

Android provee clientes HTTP para realizar conexiones y peticiones HTTP, pero no tiene la característica de soportar REST como cliente.

Introduccion:

REST (Representational State Transfer), en esencia, consiste en utilizar la especificación HTTP correctamente, este fue ganando amplia adopción en toda la web como una alternativa más simple a SOAP y a los servicios web basados en el Lenguage de Descripción de Servicios Web (Web Services Descripcion Language - WSDL). Las grandes empresas del Web 2.0 (Yahoo, Google y Facebook, etc), estan usando rest quienes marcaron como obsoletos a sus servicios SOAP y WSDL y pasaron a usar un modelo más facil de usar, orientado a los recursos.


Comentarios

Entradas populares de este blog

Primer CodeLab de Web Services con Mule ESB, JAX WS, SOAP, WSDL, Spring

Primer CodeLab de Web Services usando [ Mule ESB , JAX WS , SOAP , WSDL , Spring ]. en este post no hablaré nada teórico sobre Mule , ya que ello lo pueden encontrar Googleando, será un lab totalmente práctico. Requisitos: - JDK  1.6 - MuleStudio - soapUI Paso a Paso para crear Web Services con Mule : 1. Crear proyecto Mule ( MuleStudio ):  Next > Next > Next > Finish 2.- Crear el Objeto Producto.java package com.dmotta.mule.labuno.mulelabuno.bo; import java.io.Serializable; public class Producto implements Serializable { private String id; private String nombre; private String marca; private String descripcion; public Producto() { } public Producto(String id, String nombre, String marca, String descripcion) { this.id=id; this.nombre=nombre; this.marca=marca; this.descripcion=descripcion; } //getters/setters } 3.- Crear la Interface que publicará los métodos listarProductos() y getDetalleProdu...

RESTful Webservices con Java (Jersey / JAX-RS) - Tutorial Uno

REST con Java (JAX-RS) usando Jersey Este articulo explica como desarrollar RESTful web services en Java con JAX-RS implementacion de Jersey. En este ejemplo se usara SpringSource Tools Suite(Eclipse Helios), Java 1.6, SpringSource TC Server and JAX-RS 1.1. (Jersey 1.4). 1. REST - Representational State Transfer 1.1 Informacion General: En una Arquitectura REST tipicamente se tiene un REST server , el cual provee acceso a los Clientes REST  que acceden a consultar, modificar un Recurso REST . REST permite que los recursos sean presentados en diferentes tipos de datos, "text, html, xml, JSON" .  El Cliente REST  puede generar una peticion de un tipo de dato via el protocolo HTTP. 1.2. HTTP metodos Los metodos estandar HTTP usados en en REST son  PUT, GET, POST, DELETE. 1.3. RESTFul webservices Un RESTFul webservices es basados en metodos HTTP y en el concepto REST.  Por lo general se define URI base para los servicios, los MIME-types sus...