Eine Einführung in Webservices

Neben Websites…

Im Internet existieren neben Webseiten und -applikationen ebenso Webservices. Standardmäßig greifen Benutzer im Internet auf entfernte Ressourcen zu, beispielsweise um Informationen auszutauschen oder einzuholen. Damit das gelingt, muss die Ressource erreichbar sein und eine Kommunikation zwischen beiden Parteien stattfinden.Weil im Internet Daten mittels entfernter Server bereitgestellt werden, wird die Client-Server-Architektur als Basis verwendet. Sie bietet die Möglichkeit, Dienstleistungen und Aufgaben in Netzwerken zu verteilen. Clients können eine Anfrage (Request) an den Server schicken, der anschließend eine entsprechende Antwort (Response) zurückliefert. In dieser sind die angeforderten Daten enthalten, die der Server von einer angebundenen Datenbank holt und verarbeitet. Diese werden üblicherweise in einer Webseite mittels HTML, CSS und JavaScript für Menschen lesbar bereitgestellt.

Vereinfachte Funktionsweise des Internets

 

 

 

 

 

Wenn Anwendungen andere Anwendungen benutzen…

Ein weiterer Anwendungsfall im Internet sind Webservices. Während im ersten Fall Daten von Menschen angefordert werden, werden im Falle von Webservices Daten von maschinellen Benutzern bzw. anderen Anwendungen angefordert.  An dieser Stelle benutzen demzufolge Anwendungen andere Anwendungen, wobei die ausgetauschten Daten maschinenlesbar formatiert sind. Dieser Anwendungsbereich fällt in die Kategorie verteilter Systeme. Die größten Vertreter im Internet sind SOAP und RESTful Webservices.

Webservices

Maschinen und Anwendungen fungieren als Benutzer von Webservices. Wenn eine Softwareanwendung über einen Anbieter in einem Netzwerk oder im Internet anderen Anwendungen bereitgestellt wird, ist diese Softwareanwendung als ein Webservice oder Webdienst zu betrachten. Demzufolge folgt ein Webservice den Ansatz einer Maschine-zu-Maschine-Interaktion in verteilten Systemen. Anwendung und Anwender kommunizieren miteinander und tauschen wohlgeformte, maschinenlesbare Daten miteinander aus.

Eindeutige Adressierbarkeit

Ein Webservice hat sein Anwendungsfeld im Internet und ist Bestandteil von einem Softwaresystem, das auf einem Webserver liegt. Die Erreichbarkeit wird somit durch die, im Internet geläufige und häufig genutzte, Client-Server-Architektur ermöglicht. Grundsätzlich senden Clientprogramme Anfragen an einen Webservice, der mit den gewünschten Daten antwortet. Die Grundvoraussetzung dafür ist die Erreichbarkeit. Jeder Webservice besitzt somit eine eindeutige Identifizierungsadresse im Internet, der als Uniform Resource Identifier (URI) betitelt ist. Über diese einzigartige Adresse ist der Service abrufbar.

Kommunikation & einheitliche Schnittstellen

Darüber hinaus ist eine einheitliche Schnittstellenbeschreibung notwendig, in der definiert ist, mit welcher maschinenlesbaren Methode die Interaktion statt zu finden hat. Dazu gehören unter anderem XML-Artefakte oder Webservice Description Language-Dokumente (WSDL). Zusätzlich basiert jeder Webservice auf einem Kommunikationsstandard. Weil der Großteil des Internets auf dem HTTP-Protokoll basiert, findet es in diesem Aufgabenfeld oft Verwendung.

Serviceorientierte Architekturen

Das Kommunikationsformat kann beispielsweise auf JSON oder XML basieren. In seinen Funktionen und Eigenschaften ist ein Webservice den Eigenschaften von Diensten aus serviceorientierten Architekturen (SOA) angelehnt.Laut SOA sind Dienste plattformunabhängig, repräsentieren eine fachliche Funktionalität, sind in sich abgeschlossen und eigenständig nutzbar, im Netzwerk verfügbar und bieten eine wohldefinierte Schnittstelle an (Bianco Phil, 2007). REST und SOAP sind Möglichkeiten Webservices zu implementieren.

Funktionsweise

Typischerweise wird ein Webservice von einem Entwickler programmiert und von einem Betreiber im Internet zur Verfügung gestellt. Betreiberseits wird sichergestellt, dass der Service einen URI erhält und erreichbar ist. Optimalerweise ist über eine gesonderte Webseite der Webservice mittels einer API dokumentiert, wodurch positive Nebeneffekte auf die Verbreitung und Benutzung Services erzielt werden. Ein anderer Entwickler kann mithilfe eines implementierten Webserviceclients anschließend mit dem Webservice über seine URI kommunizieren. Die empfangenen Servicedaten werden anschließend vom Client für die eigene Softwareanwendung verwendet und weiterverarbeitet. Somit können Endbenutzer (Webseitenbesucher oder Softwarebenutzer) die Daten des Services, beispielsweise in Form einer Funktion, auf der Webseite benutzen. Facebook oder Twitter bieten beispielsweise einen Webservice, der das Einloggen von Benutzer auf anderen Websites ermöglicht, an.

Einloggen mit Facebook oder Twitter auf der eigenen Webseite? Kein Problem mit Webservices.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.