Instituto Tecnológico de TehuacánIngeniería en Sistemas ComputacionalesPROGRAMACION WEBSERVICIOS WEB EN: JAVA, PHP, PERLLi...
SERVICIOS WEB EN JAVACreación del Servicio WebEn NetBeans basta seleccionar el nombre del proyecto (Holaste en este caso) ...
De otra forma, en el modo Design existe el botón Add Operation....Se le agrega un nombre, se puede añadir parámetros y ele...
ServicioWeb.javaCon eso se generará automáticamente el código esqueleto que puedo modificarpara que me retorne "Hola, " + ...
INFO: Invoking wsimport withhttp://localhost:8080/Holaste/ServicioWebService?WSDLINFO: wsimport successfulSi todo está bie...
1213141516171819}$server = new soap_server();$server->register("getProd");$server->service($HTTP_RAW_POST_DATA);?>Ahora ne...
Consumo del web serviceCon las pocas líneas de código anteriores queda construido el web service en PHPcon nusoap. Pero so...
SERVICIO WEB EN PERLSOAP::Lite es un conjunto de módulos de Perl que proveen una interfaz simple yliviana para el protocol...
;print "La url del daemonio es:".$daemonio->url()." ";$daemonio->handle();</perl> Desde éste momento, cualquier aplicación...
API de Google AdSense – http://code.google.com/intl/es/apis/adsense/API de Google AdWords - http://www.google.com/apis/adw...
Google Mashup Editor – http://code.google.com/intl/es/gme/API de datos del Bloc de notas de Google -http://code.google.com...
Upcoming SlideShare
Loading in …5
×

Servicios web en php, perl, java

563 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

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

No notes for slide

Servicios web en php, perl, java

  1. 1. Instituto Tecnológico de TehuacánIngeniería en Sistemas ComputacionalesPROGRAMACION WEBSERVICIOS WEB EN: JAVA, PHP, PERLLista de Servicios Web de GoogleAlumna:Marcos Solís Fabiola
  2. 2. SERVICIOS WEB EN JAVACreación del Servicio WebEn NetBeans basta seleccionar el nombre del proyecto (Holaste en este caso) yponer Archivo Nuevo. Ahi también hay una opción llamada Web Service.Y le damos un nombre, por ejemplo, ServicioWeb.Añadir operacionesPara añadir operaciones hay que sólo posicionarse sobre el Servicio Web yponer Add Operation...
  3. 3. De otra forma, en el modo Design existe el botón Add Operation....Se le agrega un nombre, se puede añadir parámetros y elegir alguntipo String, boolean, int, etc.
  4. 4. ServicioWeb.javaCon eso se generará automáticamente el código esqueleto que puedo modificarpara que me retorne "Hola, " + nombre;. Así:package hola;import javax.jws.WebMethod;import javax.jws.WebParam;import javax.jws.WebService;/**** @author ooscarr*/@WebService()public class ServicioWeb {/*** Web service operation*/@WebMethod(operationName = "diHola")public String diHola(@WebParam(name = "nombre")String nombre) {//TODO write your implementation code here:return "Hola, " + nombre;}}Consumohay que armar el proyecto con el menú contextual del proyecto, opción Deploy.GENERACIÓN CORRECTA (tiempo total: 7 segundos)Y probar el servicio web, seleccionando el Servicio web, opción Test Web Service.INFO: Dynamically creating request wrapper Class hola.jaxws.DiHolaINFO: Dynamically creating response wrapper bean Classhola.jaxws.DiHolaResponseINFO: parsing WSDL...INFO: generating code...INFO:compiling code...INFO: Invoking wsimport withhttp://localhost:8080/Holaste/ServicioWebService?WSDLINFO: wsimport successfulINFO: parsing WSDL...INFO: generating code...INFO:compiling code...
  5. 5. INFO: Invoking wsimport withhttp://localhost:8080/Holaste/ServicioWebService?WSDLINFO: wsimport successfulSi todo está bien instalado, se debería abrir una ventana del navegador más omenos así.SERVICIOS WEB EN PHPNuSOAP, un toolkit para el desarrollo de servicios web con SOAP en PHP, que nosproveerá de diversas clases para trabajar con este protocolo.Con NuSOAP instalado toca crear un servidor SOAP en nuestra aplicación. Para elejemplo crearemos un servidor, lo llamaremos producto.php, que si recibe unapetición donde se le pida una lista de libros devuelva tres títulos.1234567891011<?phprequire_once "nusoap.php";function getProd($categoria) {if ($categoria == "libros") {return join(",", array("El señor de los anillos","Los límites de la Fundación","The Rails Way"));}else {return "No hay productos de esta categoria";}
  6. 6. 1213141516171819}$server = new soap_server();$server->register("getProd");$server->service($HTTP_RAW_POST_DATA);?>Ahora necesita un cliente, que llamaremos cliente.php. En el constructor, el clienterecibirá el url del servidor y para acceder al método que nos devuelve los librosrecurriremos al método call(), al cual le pasaremos el nombre del método del servidoral que queremos acceder y los parámetros en forma de array. Además, tambiéncontrolaremos que no haya errores en la comunicación.<?phprequire_once "nusoap.php";$cliente = new nusoap_client("http://localhost/producto.php");$error = $cliente->getError();if ($error) {echo "<h2>Constructor error</h2><pre>" . $error . "</pre>";}$result = $cliente->call("getProd", array("categoria" => "libros"));if ($cliente->fault) {echo "<h2>Fault</h2><pre>";print_r($result);echo "</pre>";}else {$error = $cliente->getError();if ($error) {echo "<h2>Error</h2><pre>" . $error . "</pre>";}else {echo "<h2>Libros</h2><pre>";echo $result;echo "</pre>";}}?>En este punto, si se ejecuta en el navegador el anterior archivo y se hace clicsobre WSDL, se ve toda la estructura XML del archivo. Si se hace clic en uno de losmétodos, se muestra en el navegador una página como la siguiente:
  7. 7. Consumo del web serviceCon las pocas líneas de código anteriores queda construido el web service en PHPcon nusoap. Pero solo puede ser útil si se consume desde alguna página oaplicación, así que se crea en este caso una página que actúa como cliente de loanterior. Se trata simplemente de una página web en PHP en la que se escribentextos en cada campo (cliente.php).- Si se hace clic en el botón Validar, se compara cada texto con las palabras“usuario” para el nombre y “claveUsuario” para la clave. Si las dos corresponden semuestra un mensaje “Válido” en color azul, de lo contrario u mensaje en color rojode “no es válido”.- Si se hace clic en el botón Encriptar, un mensaje muestra las cadenas de textoescritas en cada campo, encriptadas con md5.
  8. 8. SERVICIO WEB EN PERLSOAP::Lite es un conjunto de módulos de Perl que proveen una interfaz simple yliviana para el protocolo SOAP, tanto en el lado cliente como en el del servidor.SOAP::Lite es actualmente el kit de desarrollo de web services para Perl másdifundido y utilizado. Su página en SourceForge ha registrado más de 10,700descargas en casi 2 años.Código del archivo Cafetera.pm <perl>#!/usr/bin/perl -w# Servicio web de ejemplopackage Cafetera;use strict;# Este es el constructorsub new{my $proto = shift;my $class = ref($proto) || $proto;my $tasas = 0;bless($tasas,$class);}sub prepararCafe{shift;my $tasas = shift;print STDERR "Llamado con el parámetro $tasas";return "Se prepararon ".$tasas." tasas";}1;</perl> A continuación se muestra el uso del módulo SOAP::Lite para exponer elmódulo Cafetera como un servicio web, usando el servidor tipoSOAP::Transport::HTTP::Daemon:Código del archivo servidor.pl <perl>#!/usr/bin/perl -w# Servidor SOAPuse SOAP::Transport::HTTP;use Cafetera;#En el parámetro dispatch_to se especifica la ruta a los módulosdisponiblesmy $daemonio = SOAP::Transport::HTTP::Daemon-> new(LocalAddr => localhost, LocalPort => 8070)-> dispatch_to(/home/tesis/thewala/preparacion/P.5-IP/productos/servicio-en-perl,Cafetera)
  9. 9. ;print "La url del daemonio es:".$daemonio->url()." ";$daemonio->handle();</perl> Desde éste momento, cualquier aplicación puede empezar a consumir elservicio web, si sabe cómo invocarlo. A continuación se muestra un cliente delservicio hecho en Perl con SOAP::Lite:Código del archivo cliente.pl <perl>#!/usr/bin/perl -wuse strict;use SOAP::Lite;my $soap = SOAP::Lite->uri(http://localhost:8070/Cafetera)->proxy(http://localhost:8070/);my $resultado= $soap->prepararCafe(5)->result;print "Preparando cafe: ".$resultado." ";SERVICIOS WEB DE GOOGLELink de los servicios web:https://developers.google.com/maps/documentation/webservices/?hl=esListado de serviciosAndroid – http://code.google.com/intl/es/android/APIs de datos de Google – http://code.google.com/intl/es/apis/gdata/API de datos de Blogger - http://code.google.com/intl/es/apis/blogger/APIs de FeedBurner – http://code.google.com/intl/es/apis/feedburner/Feeds Atom de Gmail -http://gmail.google.com/support/bin/answer.py?answer=13465Autenticación de cuentas de Google –http://code.google.com/intl/es/apis/accounts/
  10. 10. 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/API AJAX de Google para feeds –http://code.google.com/intl/es/apis/ajaxfeeds/API 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/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/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/API de gadgets de Google – http://code.google.com/intl/es/apis/gadgets/Google 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/
  11. 11. Google Mashup Editor – http://code.google.com/intl/es/gme/API de datos del Bloc de notas de Google -http://code.google.com/intl/es/apis/notebook/Feeds de Google Noticias –http://news.google.com/intl/en_us/news_feed_terms.htmlAPIs de navegación segura de Google -http://code.google.com/intl/es/apis/safebrowsing/Feeds del Historial de búsquedas de Google –http://www.google.com/support/accounts/bin/answer.py?answer=54464Especificació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/picasaweb/API de datos de YouTube – http://code.google.com/intl/es/apis/youtube/

×