Webservice
Eintrag zuletzt aktualisiert am: 04.01.2012
Fachbücher zum Thema Webservice
siehe
Ein Webservice ist eine Technik zur Anwendungskopplung (Mensch-zu-Maschine-Kommunikation).
Ursprünglich war Webservice mit der Verwendung der plattformunabhängigen, standardisierten Protokolle
SOAP (
Serialisierungsformat) und
HTTP (Transportprotokoll) gleichgesetzt und primär ein Instrument zur Kopplung heterogener Systemen (plattformübergreifende Kopplung). Dabei senden ein Webservice-Client (alias
HTTP-Client/
SOAP-Client) an einen Webserver (alias
SOAP-Server/
HTTP-Server) eine
SOAP-Anfrage. Auf dem Server wird Code ausgeführt und der Webserver antwortet mit einer
SOAP-Antwort. Meist ist die Kommunikation zustandslos.
Später ist diese Definition aufgeweicht, weil einere Protokolle zum Einstaz kamen, z.B.
JSON oder beliebiges
XML ("Plain Old
XML -
POX") statt
SOAP (vgl. Idee der "
REST"-basierten Webservices) und das effizientere
TCP statt
HTTP. Anstelle von standardisierten Protokollen setzten einige Hersteller (inkl. Microsoft) auch effizientere, aber proprietäre Alternativen ein (z.B. ein Binärformat zur
Serialisierung und
MSMQ als Transport).
Heute müssen selbst Fachleute oft in Gesprächen zunächst ihre Definition von "Webservices" abgleichen.
Manche Personen verstehen unter "Webservice"
1. jegliche von Dienstleistung im Internet, auch Mensch-zu-Maschine-Kommunikation (hierfür sei besser nicht Webservice verwendet)
2. einen Maschine-zu-Maschine-Dienst auf Basis von
HTTP und
SOAP (hier besser:
SOAP-Webservice)
3. einen Maschine-zu-Maschine-Dienst auf Basis von
HTTP und allgemein
XML (hier besser:
XML-Webservice
4. ein Maschine-zu-Maschine-Dienst auf Basis des serviceorientierten Paradigmas mit plattformunabhängigen Protokollen
5. ein Maschine-zu-Maschine-Dienst auf Basis des serviceorientierten Paradigmas mit beliebigen Protokollen
Geschichte
Früher boten Websites nur eine interaktive, visuelle Benutzerschnittstelle in Form von
HTML-Seiten mit Grafiken. Diese Art der Darbietung von Informationen richtet sich an Menschen. Für Maschinen (Anwendungen, Robots, Crawler, Agents) ist sie nicht adäquat. Maschinen mussten Webseiten per
Screen Scraping auslesen: Sie analysieren den
HTML-Code, um Informationen herauszufiltern. Jede Änderung in der Darstellung kann dazu führen, dass die Maschine im Folgenden den Inhalt falsch interpretiert. Webservices bietet diese Maschine-zu-Maschine-Kommunikation mit wohldefinierten, plattformübergreifenden Schnittstellen.