• Publicidad

Construir Web Service

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Construir Web Service

Notapor panterozo » 2011-04-28 15:38 @693

Estimados:

Necesito crear un Web Service en Perl. He buscado en el foro, pero no he logrado encontrar lo que busco. Si alguien ha hecho algún Web Service, podría pasar por aquí y ayudarme a comenzar.

¿Hay que tener alguna consideración antes de comenzar?, ¿hay algún módulo que me recomienden, o mejor aún, una lectura donde se explique un desarrollo de algún Web Service en Perl?

Sin mas que deciros, ¡¡¡muchas gracias!!!
panterozo
Perlero nuevo
Perlero nuevo
 
Mensajes: 160
Registrado: 2010-01-26 08:36 @400

Publicidad

Re: Construir Web Service

Notapor explorer » 2011-04-28 16:31 @730

Por aquí hemos hablado varias veces sobre el tema.

Lo primero que debes decidir qué protocolo vas a usar.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Construir Web Service

Notapor panterozo » 2011-05-31 13:07 @588

Estimados:

Reabro el tema, ya que lo había dejado por un tiempo... He revisado varios ejemplos y otros links a este mundo de los web services. Ahora, tengo un par de dudas...

He realizado unas pruebas con SOAP::Lite, y anda genial. De aquí he hecho algunas pruebas.

Tengo que replicar un web service en la máquina local, pero éste ya tiene un esquema, y el envío de datos es con un XML:

Sintáxis: [ Descargar ] [ Ocultar ]
Using xml Syntax Highlighting
  1.  
  2.     <InformacionOnline xmlns="http://dominio.com/">
  3.       <usuario>string</usuario>
  4.       <password>string</password>
  5.     </InformacioOnline>
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Ahora... ¿cómo puedo primero enviar datos a este web service cumpliendo con el esquema que ya tiene?, y por otra parte, ¿cómo replico el servicio en mi dominio que cumpla con las restricciones del esquema?

Además... con SOAP::Lite el XML lo envía, pero no lo vemos, ¿no...? Si es así, ¿cómo hacer el XML mostrado arriba...?

Si estoy muy errado en los conceptos, discúlpenme ;)

A todo esto, el servicio es con SOAP :P

Espero me puedan ayudar ;)
panterozo
Perlero nuevo
Perlero nuevo
 
Mensajes: 160
Registrado: 2010-01-26 08:36 @400

Re: Construir Web Service

Notapor panterozo » 2011-06-01 12:18 @554

Esto ha funcionado para mi...

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use strict;
  2.  
  3. use LWP::UserAgent;
  4. use HTTP::Request::Common;
  5.  
  6. my $userAgent = LWP::UserAgent->new(agent => 'perl post');
  7.  
  8. my $message = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
  9.                <soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
  10.                 xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"
  11.                 xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">
  12.                  <soap:Body>
  13.                    <webService xmlns=\"http://www.eldominio.tld/\">
  14.                      <datos>blablabla</datos>
  15.                    </webService>
  16.                  </soap:Body>
  17.                </soap:Envelope>";
  18.  
  19. # A dónde hacemos el post..
  20. my $response = $userAgent->request(POST 'http://www.eldominio.tld/',
  21. Content_Type => 'text/xml',
  22. Content => $message);
  23.  
  24. print $response->error_as_HTML unless $response->is_success;
  25. my $doc = $response->as_string;
  26. # Hago salto de línea
  27. $doc =~ s/></>\n</g;
  28. print $doc;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Obtenido aquí.

Creo que el manejo con SOAP::Lite debe de hacerse más fácil, o menos líneas de código, pero con este script puedo consumir el servicio web.

Cualquier avance lo posteo..

¡¡¡Saludos!!!
panterozo
Perlero nuevo
Perlero nuevo
 
Mensajes: 160
Registrado: 2010-01-26 08:36 @400

Re: Construir Web Service

Notapor panterozo » 2011-06-08 18:21 @806

Resuelto en Foro Básico

¡¡¡Saludos!!!
panterozo
Perlero nuevo
Perlero nuevo
 
Mensajes: 160
Registrado: 2010-01-26 08:36 @400


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 10 invitados