Ein Client für den Echo-Service
Das folgende Perl-Programm dient dazu, Meldungen an unseren neuen Echo-Service zu schicken. Sie brauchen nur ein paar Variablen anzupassen, damit dieser Client auch in Ihrer Umgebung funktioniert. In Zeile 9 passen Sie einfach die Variable $HOST so an, dass die URL auf Ihren SOAP::Lite-Request-Dispatcher verweist.
1 #!/usr/bin/perl -w 2 # Dateiname: echo_client.pl 3 # Client zum Versenden einer Nachricht an den Echo-Web Service 4 # Autor: Byrne Reese byrne@majordojo.com 5 # Verwendung: 6 # echo_client.pl <unser Echo> 7 ########################################### 8 use SOAP::Lite; # +trace => 'debug'; 9 $HOST = "http://localhost/cgi-bin/echo.cgi"; 10 $NS = "urn:Echo"; 11 $PHRASE = shift; # von der Kommandozeile lesen 12 my $soap = SOAP::Lite 13 ->readable(1) 14 ->uri($NS) 15 ->proxy($HOST); 16 my $som = $soap->echo( 17 SOAP::Data->name("whatToEcho" => "$PHRASE")); 18 print "Die Antwort vom Server:n".$som->result."n"; 19 1;
Die Einzelteile zusammenfügen
Mit den oben gezeigten drei Code-Ausschnitten haben wir alles, was wir für unseren ersten Web Service brauchen. Installieren Sie den Request-Dispatcher (echo.cgi) und den Request-Handler (Echo.pm) in ein cgi-bin-Verzeichnis auf Ihrem Webserver. Dann verwenden Sie unseren Beispiel-Client (echo_client.pl) zum Aufrufen des Web Service. Achten Sie darauf, das Programm echo_client.pl so anzupassen, dass es Ihren Echo-Service aufruft:
[localhost]$ perl echo_client.pl "Hier ist unser Echo." Die Antwort vom Server: Hier ist unser Echo.
Man kann SOAP::Lite anweisen, alle Debugging-Informationen auszugeben, einschließlich aller HTTP-Header sowie der SOAP Request- und Response-Meldungen, indem man Zeile 8 von echo_client.pl wie folgt ändert:
8 use SOAP::Lite +trace => 'debug';
Nur ein Beispiel für viele
Wie man sieht, nimmt einem SOAP::Lite die meisten der schwierigen Aufgaben ab, so dass die Implementierung eines Web Service wesentlich vereinfacht wird. Allerdings ist das Beispiel aus diesem Artikel viel zu simpel, um in einer Produktionsumgebung zum Einsatz zu kommen. Es sollte vor allem dazu dienen, bei Ihnen das Interesse am Schreiben von Web Services und SOAP::Lite zu wecken. Wenn Sie erst einmal verstanden haben, wie man dieses Modul benutzt, können Sie leicht auch komplexere Services implementieren.
Neueste Kommentare
Noch keine Kommentare zu Ein Web Service mit SOAP::Lite
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.