ING. SISTEMAS COMPUTACIONALESPROGRAMACION WEBInstituto tecnológico detehuacan
Los servicios web han venido a revolucionar el mundo de la programación y de los juegos,nos ofrecen una infinidad de venta...
if (!$r){ die("Falló SEND"); }$v=$r->value();if (!$r->faultCode()){ print "Título del libro ".$HTTP_POST_VARS["txtIsbn"]."...
mi $ nombre = cambio;print " n  nCalling el servidor SOAP para saludar  n ";print "El servidor SOAP dice: ";impresión SOAP...
En el ejemplo anterior se intercambia un objeto CreditCard entre el consumidor y elproveedor del servicio .Los datos inter...
FeedBurner ofrece servicios web que permiten interactuar con funciones de generaciónde información y administración de fee...
OpenSocial http://code.google.com/intl/es/apis/opensocial/-- http://code.google.com/intl/es/apis/orkut/Sitio del desarroll...
Upcoming SlideShare
Loading in …5
×

Servicios web

431 views
352 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
431
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Servicios web

  1. 1. ING. SISTEMAS COMPUTACIONALESPROGRAMACION WEBInstituto tecnológico detehuacan
  2. 2. Los servicios web han venido a revolucionar el mundo de la programación y de los juegos,nos ofrecen una infinidad de ventajas y nos ayudan a mejorar la forma de procesarinformación. Pero, ¿qué es un servicio web?, pues bien, es computación distribuidautilizando estándares abiertos como XML y HTTP para llamar o invocar funciones de otrasaplicaciones independientes sea cual sea el sistema operativo o plataforma en que seejecutan.SERVICIOS WEB CON PHPPara lograr la implementación de servicios web en PHP se usó las tecnologías XML-RPC y SOAP sobre las cuales se implementaron servidores y clientes consumidores de serviciosweb.Desarrollo de un servidor XML-RPCComo usaremos el framework XML-RPC desarrollado por Edd Dumbill para desarrollarnuestros servicios web basados en XML-RPC.Dicho framework cuenta con la clase xmlrpc_server para construir nuestros servidores, la cualse ha desarrollado lo más simple posible. El constructor básicamente hace todo el trabajo,veamos un pequeño ejemplo:<?phpfunction foo($parametros){/* Instrucciones php */}$servidor=new xmlrpc_server(array("ejemplo.miFuncion"=>array("function"=>"foo")));?>CONSUMO: Desarrollo de clientes SOAP con PHP<?phpinclude("xmlrpc.inc");if ($HTTP_POST_VARS["txtIsbn"]!=""){ $f=new xmlrpcmsg(libros.buscaIsbn,array(new xmlrpcval($HTTP_POST_VARS["txtIsbn"], "int")));print "<pre>".htmlentities($f->serialize())."</pre>n";$c=new xmlrpc_client("/servidor.php", "localhost", 80);$c->setDebug(0);$r=$c->send($f);
  3. 3. if (!$r){ die("Falló SEND"); }$v=$r->value();if (!$r->faultCode()){ print "Título del libro ".$HTTP_POST_VARS["txtIsbn"]." es ".$v->scalarval()."<BR>"; }else{ print "Falla: ";print "Número de error: " .$r->faultCode()." Descripción del error ".$r->faultString()."<BR>";}}?>Ya hemos implementado nuestro servidor y nuestro cliente XML-RPC.SERVICIOS WEB CON PERLPerl, al igual que la mayoría de los idiomas, oculta al programador de las complejidadescon una caja de herramientas. el soap :: Lite conjunto de herramientas es una de lasimplementaciones más completas de jabón disponibles, apoyando ambas versiones 1.1 y1.2 de soap.Comencemos por crear el módulo Perl Hello World :Ejemplo 3-3: Hello.pm# Hello.pm - Hola módulo sencillopaquete Hello;sub sayHello {turno; # eliminar nombre de la clasede retorno "Hello". cambio;}Este módulo será el código que se encuentra detrás de nuestra interfaz de servicio web.CONSUMO :El Cliente HolaPara probar el servicio web Hola, sólo tiene que utilizar el script de cliente .Ejemplo 3-5: hw_client.pl! # / Usr / bin / perl-w# hw_client.pl - Hola clienteutilización SOAP :: Lite;
  4. 4. mi $ nombre = cambio;print " n nCalling el servidor SOAP para saludar n ";print "El servidor SOAP dice: ";impresión SOAP :: Lite-> uri (urn: Ejemplo 1)-> proxy (http://localhost/cgi-bin/helloworld.cgi)-> sayHello ($ name)-> como resultado. " N n";Al ejecutar esta secuencia de comandos que debe dar los siguientes resultados:% Perlhw_client.pl JamesLlamar al servidor SOAP para saludaral servidor SOAP dice: Hola James%SERVICIO WEB CON JAVAExisten gran cantidad de implementaciones que ayudan al desarrollo de Servicios Web para cadauno de los lenguajes de programación.Sun provee de una serie de tecnologías en su versión Java EE para el desarrollo de Servicios Web.Éstas tecnologías son estándares de desarrollo, así como API’s que especifican el comportamientode implementaciones.A partir de la version 6 (update 4), la plataforma Java estándar (JDK), incluye las APIs paratrabajar con JAX-WS y JAXB, fundamentales para el consumo de web services .Definiendo un servidio web :@WebServicePublic class cardvalidator{Public boolean validate(CreditCard creditCard){String lastDigit=creditCard.getNumber().substring(creditCard.getNumber().length() -1,creditCard.getNumber().length());if()Integer.parseInt(lastDigit)%2!=0){return true;} else{return false;}}}
  5. 5. En el ejemplo anterior se intercambia un objeto CreditCard entre el consumidor y elproveedor del servicio .Los datos intercambiados, deben ser un documento XML, por lo que se necesita unmétodo para transformar el objeto Java en un documento XML y viceversa .Para esto utilizamos JAXB, anotándolo con @javax.xml.bind. annotation.XmlRootElement .CONSUMO:Public class Main{Public static void main(String[] args){CreditCard creditCard=new CreditCard();CreditCard.setNumber(“12341234”);CreditCard.setExpiryDate(“10/10”);CreditCard.setType(“visa”);CreditCard.setControlNumber(1234);CardValidator cardValidator=new CardValidatorService().getCardValidatorPort();cardValidator.validate(creditCard);}}SERVICIOS WEB GOOGLELos productos que Google ofrece a los desarrolladores.Android – http://code.google.com/intl/es/android/Androide es una pila de software para dispositivos móviles que incluye un sistemaoperativo, aplicaciones esenciales y middlewareAPIs de datos de Google – http://code.google.com/intl/es/apis/gdata/Las APIs de datos de Google constituyen un sencillo protocolo estándar para leer eintroducir datos en la Web. Por ejemplo: Google Base, Blogger, Google Calendar, GoogleDocs y Álbumes web de Picasa.API de datos de Blogger http://code.google.com/intl/es/apis/blogger/-La API de datos de Blogger permite a las aplicaciones cliente ver y actualizar contenido deBlogger como feeds de la API de datos de Google.APIs de FeedBurner – http://code.google.com/intl/es/apis/feedburner/
  6. 6. FeedBurner ofrece servicios web que permiten interactuar con funciones de generaciónde información y administración de feeds.Autenticación de cuentas de Google – http://code.google.com/intl/es/apis/accounts/API de Google AdSense – http://code.google.com/intl/es/apis/adsense/API de Google AdWords http://www.google.com/apis/adwords/-APIs AJAX de Google – http://code.google.com/intl/es/apis/ajax/– http://code.google.com/intl/es/apis/ajaxfeeds/API AJAX de Google para feedsAPI AJAX de Google Search – http://code.google.com/intl/es/apis/ajaxsearch/Google Analytics – http://code.google.com/intl/es/apis/analytics/APIs de Google Apps – http://code.google.com/intl/es/apis/apps/API de datos de Google Base – http://code.google.com/intl/es/apis/base/Herramientas y APIs de Google Calendar –http://code.google.com/intl/es/apis/calendar/API de Google Chart http://code.google.com/intl/es/apis/chart/–API de Google Checkout – http://code.google.com/intl/es/apis/checkout/Google Code Search – http://www.google.com/codesearchAPI de datos de Google Code Search –http://code.google.com/intl/es/apis/codesearch/Feeds de vales descuento de Google – http://code.google.com/intl/es/apis/coupons/API de gadgets de Google Desktop – http://code.google.com/intl/es/apis/desktop/APIs de búsqueda de Google Desktop – http://code.google.com/intl/es/apis/desktop/API de datos para la lista de Google Docs –http://code.google.com/intl/es/apis/documents/– http://code.google.com/intl/es/apis/gadgets/API de gadgets de GoogleGoogle Gears http://code.google.com/intl/es/apis/gears/–KML de Google – http://code.google.com/intl/es/apis/kml/Mapplets de Google –http://code.google.com/intl/es/apis/maps/documentation/mapplets/API de Google Maps – http://code.google.com/intl/es/apis/maps/Google Mashup Editor – http://code.google.com/intl/es/gme/
  7. 7. OpenSocial http://code.google.com/intl/es/apis/opensocial/-- http://code.google.com/intl/es/apis/orkut/Sitio del desarrollador de Orkut APIs denavegación segura de Google http://code.google.com/intl/es/apis/safebrowsing/-APIs de Google Search Appliance – http://code.google.com/intl/es/enterprise/Feeds del Historial de búsquedas de Google –http://www.google.com/support/accounts/bin/answer.py?answer=54464– https://www.google.com/webmasters/tools/docs/en/about.htmlGoogle Sitemaps– http://code.google.com/intl/es/apis/sketchup/API Ruby de Google SketchUpAPI de gráficos sociales – http://code.google.com/intl/es/apis/socialgraph/API de datos de Google Docs – http://code.google.com/intl/es/apis/spreadsheets/XMPP de Google Talk - http://code.google.com/intl/es/apis/talk/– http://code.google.com/intl/es/apis/themes/API de Temas de iGoogle- http://www.google.com/tools/toolbar/buttons/apisAPI de la Barra GoogleEspecificación de feeds de Google Transit–http://code.google.com/intl/es/transit/spec/transit_feed_specification.htmGoogle Web Toolkit http://code.google.com/intl/es/webtoolkit/-API de los Álbumes web de Picasa– http://code.google.com/intl/es/apis/youtube/API de datos de YouTube

×