La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Uso de Google Web API, SOAP y WSDL

Presentaciones similares


Presentación del tema: "Uso de Google Web API, SOAP y WSDL"— Transcripción de la presentación:

1 Uso de Google Web API, SOAP y WSDL
Universidad Carlos III de Madrid Arquitecturas de Sistemas E-Business Saulo Barajas 31may04

2 Contenido Introducción Interfaz WSDL de Google API Ejemplo de petición y respuesta SOAP Clases Java de Google API Aplicación de ejemplo Conclusiones Preguntas y comentarios

3 Introducción Google proporciona una API experimental que permite acceder por SOAP a sus servicios de búsqueda. Componentes: Descripción WSDL de las operaciones Servidor que procesa las peticiones SOAP (hasta 1000 diarias por cliente) Clases Java para invocar las operaciones Ejemplos en Java y en .Net

4 Servidor SOAP de Google
Web service de Google 2. Petición SOAP Servidor SOAP de Google Servidor web 5. Respuesta SOAP 3. Petición Google 1. Petición HTTP 6. Respuesta en HTML 4. Respuesta Google Cliente web Base de datos de Google La aplicación desarrollada utiliza Cocoon en el servidor web La API de Google posibilita los pasos 2 y 5 Google ofrece archivo WSDL describiendo las operaciones disponibles

5 Interfaz WSDL http://api.google.com/GoogleSearch.wsdl Operación
Entradas Tipo Salida doGetCachedPage key url xsd:string return xsd:base64Binary doGoogleSearch q start maxResults filter restrict safeSearch lr ie oe xsd:int xsd:boolean typens:GoogleSearchResult doSpellingSuggestion phrase

6 Tipo complejo GoogleSearchResult
Elemento Tipo documentFiltering searchComments estimatedTotalResultsCount estimateIsExact resultElements searchQuery startIndex endIndex searchTips directoryCategories searchTime xsd:boolean xsd:string xsd:int typens:ResultElementArray typens:DirectoryCategoryArray xsd:double

7 Tipo complejo ResultElement
Elemento Tipo summary URL snippet title cachedSize relatedInformationPresent hostName directoryCategory directoryTitle xsd:string xsd:boolean typens:DirectoryCategory

8 Ejemplo petición SOAP <key xsi:type='xsd:string'>
<?xml version='1.0'?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=' xmlns:SOAP-ENC=' xmlns:soapenc=' xmlns:typens='urn:GoogleSearch' xmlns:wsdl=' xmlns:xsd=' xmlns:xsi=' <SOAP-ENV:Body> <ns1:doSpellingSuggestion SOAP-ENV:encodingStyle=' xmlns:ns1='urn:GoogleSearch'> <key xsi:type='xsd:string'> aaaaaaaaaabbbbbbbccccccccddddd </key> <phrase xsi:type='xsd:string'> misisipi </phrase> </ns1:doSpellingSuggestion> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

9 Ejemplo respuesta SOAP
<?xml version='1.0' encoding='UTF-8'?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=' xmlns:xsi=' xmlns:xsd=' <SOAP-ENV:Body> <ns1:doSpellingSuggestionResponse xmlns:ns1='urn:GoogleSearch' SOAP-ENV:encodingStyle=' <return xsi:type='xsd:string'> mississippi </return> </ns1:doSpellingSuggestionResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

10 Clases Java de Google API
Significado y algunos métodos GoogleSearch Acceso a los servicios de Google por SOAP byte[ ] doGetCachedPage (String url) GoogleSearchResult doSearch() String doSpellingSuggestion(String phrase) GoogleSearchResult Resultados de una búsqueda GoogleSearchResultElement[ ] getResultElements() double getSearchTime() GoogleSearchResultElement Un elemento de búsqueda String getURL() String getTitle() GoogleSearchDirectoryCategory getDirectoryCategory() GoogleSearchDirectoryCategory Utilizado por GoogleSearchResult String getFullViewableName() GoogleSearchFault Manejo de excepciones

11 Acceso a Google desde Cocoon
Las operaciones de Google son accesibles desde Cocoon de dos formas: Utilizando las clases Java proporcionadas. Sus métodos generan automáticamente los mensajes SOAP  Requiere código Java en páginas XSP. Construyendo los mensajes SOAP y procesando las respuestas del servidor  Elemento <soap:call> en XSP. Se usan ambos métodos en la aplicación

12 Aplicación simple (1) <map:match pattern="">
<map:generate src="index.htm"/> <map:serialize/> </map:match>

13 Operación “doSpellingSuggestion”
Aplicación simple (2) Operación “doSpellingSuggestion” <map:match pattern="corregir"> <map:generate src="corregir.xsp" type="serverpages"/> <map:transform src="resultado-corregir.xsl"/> <map:serialize/> </map:match>

14 Operación “doGoogleSearch”
Aplicación simple (3) Operación “doGoogleSearch” <map:match pattern="buscar"> <map:generate src="buscar.xsp" type="serverpages"/> <map:transform src="resultado-buscar.xsl"/> <map:serialize/> </map:match>

15 Operación “doGetCachedPage”
Aplicación simple (4) Operación “doGetCachedPage” <map:match pattern="vercache"> <map:generate src="vercache.xsp" type="serverpages"/> <map:transform src="resultado-vercache.xsl"/> <map:serialize/> </map:match>

16 Conclusiones La Google de API permite experimentar con web services. No se ofrece comercialmente. El uso de los web services en Cocoon resulta más sencillo que en otros lenguajes debido a su orientación a XML y sus posibilidades de trans- formación de documentos. La aplicación simple presentada ofrece un punto de partida para exprimir más la API de Google o experimentar con otros web services.

17 Preguntas y comentarios
Uso de Google Web API, SOAP y WSDL Preguntas y comentarios


Descargar ppt "Uso de Google Web API, SOAP y WSDL"

Presentaciones similares


Anuncios Google