Web Services Flashcards
Was sind Web Services?
Ein Web Service ist eine Sammlung an Funktionen die von anderen Programmen genutzt werden können.
Was ist ein RPC
Ein RPC (Remote Procedure Call) ist da um Clients eine einfache Möglichkeit mit Servern zu über Funktions call/return Semantik zu kommunizieren. Das Netzwerk wird Abstrahiert so das es für den Nutzer wie ein normaler Funktionsaufruf aussieht.
Ablauf von RPC
Der Nutzer ruft einfache eine Funktion f(x) auf, welche y zurückgibt
1. RPC Mechanismus erstellt eine Nachricht mit mindestens f und x und sendet sie and den Server
2. Server packt die Nachricht aus und führt f mit Parameter x aus
3. Server sendet y and den Client zurück.
Wie überträgt der Client die Aufrufanfordern (Prozedurname) und die Argumente in den Server über das Netzwerk?
Mit Marschalling:
1. Für jede RPC wird ein (Client) stub procedure generiert und an das (Client) Programm angefügt
2. Ersetze den RPC mit einem Aufruf des stub procedure
3. Das stub procedure marhsals die Agumente und den Prozedurnamen in eine Nachricht
Aus welchen Basisbausteinen besteht ein Web Service?
- UDDI: Universal Description, Discovery and Integration
- WSDL: Web Services Description Language
- SOAP: Simple Object Access Protocol
- XML: Extensible Markup Language
- HTTP: Hyper Text Transfer Protocol
Was ist SOAP
- SOAP definiert Nachrichtenformate, ist aber nicht ein richtiges Protokoll.
- Benutzt HTTP zur eigentlichen Übertragung
- Benutzt XML zur Repräsentation von Daten
- Besteht aus drei Teilen
- Envelope (pflicht) : oberstes Element des XML Dokuments die die Nachricht darstellen
- Header (optional) : Sagt an wie ein Empfänger die Nachricht verarbeiten sollte: Authentifikation, Transaktion, Zahlung, …
- Body (pflicht) : Informationen für den Empfänger
Was ist WSDL?
In der Web Service Description Language steht wie und wo man verschiedene Dienste benutzen kann.
Wie wird WSDL verwendet?
- Client liest WSDL um die Funktionalität des Web Services herauszufinden.
- Client erstellt stub aus dem WSDL file
- Client benutzt SOAP um eine Funktion aus dem WSDL file aufzurufen
Was ist UDDI?
UDDI ist ein Register in dem Dienstleister ihre Dienste anbieten können und Clients können verschieden Dienste suchen. UDDI hat mehrere Teile:
* White pages: Business information
* Yellow pages: Service information
* Green pages: Technical information
Was ist REST?
REST soll eine alternative zu SOAP/WSDL basierten Webservices sein und ist eine Reihe von Einschränkungen für verteilte Systeme.
Wann wird ein System RESTful gennant?
Wenn es alle Einschränkungen von REST erfüllt.
Wie Funktioniert REST?
- REST benutzt normale HTTP methoden
- REST benutzt Resourcen die einen Status, identifier haben
- Resourcen sind z.B. documents, images, services
- Resourcen stellen eine einheitliche Schnittstelle bereit.
- Nach anfrage kann eine Resource eine Repräsentation seines Status an den Client schicken
- Ein Client kann eine vergeschlagene repräsentation einer Resource an den Server senden
- Die interaktion zwischen Client und Server ist Stateless
- Stateless für dazu, das Nachrichten selbstbeschriebend sind
Warum ist Rest Cachable?
- einheitliches Interface
- Stateless
- selbstbeschreibend
Wie sind Statuscodes Aufgebaut?
REST - Beispiel