Architektur von REST basierten Webservices

Ähnliche Dokumente
Web-Konzepte für das Internet der Dinge Ein Überblick

Mobilkommunikation. REST-basierte Dienste für verteilte, mobile Anwendungen. A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt

2. WWW-Protokolle und -Formate

Grundlagen der Web-Entwicklung INF3172

Backend. Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017. Christopher Dörge, Thomas Sauer, David Müller

ODS 6.0 Schnittstelle

Dirk von der Weiden, Olaf Meyer C1 SetCon. REST in the Enterprise

M2M-Serviceplattformen für das Internet der Dinge

Einführung. Internet vs. WWW

Stefan Tilkov. REST und HTTP. Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag

REST Grundlagen. Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web. Olga Liskin

Delphi MVC Framework. Mathias Pannier

Automatisierung und Integration von Request Tracker Systemen mittels REST-Schnittstelle. Stefan Hornburg. Perlworkshop 2008

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG

!"# $ % Internet Protokolle: HTTP 1/38

RESTful Web. Representational State Transfer

<Insert Picture Here> Einführung in SOA

Hypertext Transfer Protocol

Apache HTTP Server Administration

Web Service Entwicklung mit Java. Sven Lindow

Anbindung an WebServices Robert Zacherl

REST in Pieces. Jörn Clausen

Die Nutzung von Webservices in der Oracle Datenbank. 11 März 2010

!"#$"%&'()*$+()',!-+.'/',

REST in Pieces. Jörn Clausen

SAP NetWeaver Gateway. 2013

BIW Wahlpflichtmodul. Einführung in Solr, Pipeline und REST. Philipp Schaer, TH Köln (University of Applied Sciences), Cologne, Germany

REST: Eine leichtgewichtige und einfachere Alternative zu Web Services. W3L AG

Forms auf Tablets. Vision oder Realität?

Wiederholung: Beginn

Flash, Network und Facebook. Steven Mohr

Verteilte Systeme: Übung 4

NEWpixi* API und die Umstellung auf REST. Freitag, 3. Mai 13

Web Services Einsatzmöglichkeiten für das Information Retrieval im WWW

5. Übung zur Vorlesung Service-orientierte Architekturen

APEX URLs Suchmaschienen- und Benutzerfreundlich

Webservices REST vs. SOAP

APIC-EM Software Engineering Insight

VS7 Slide 1. Verteilte Systeme. Vorlesung 7 vom Dr. Sebastian Iwanowski FH Wedel

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Erstellen von Web-Seiten HTML und mehr...

Open Archives Initiative - Protocol for Metadata Harvesting (OAI-PMH)

Grundlagen der WWW- und Dokumenten-Architektur. Robert Strzebkowski TFH Berlin

Inhaltsverzeichnis. Vorwort... Einleitung... Einführung... 1

GeoServer in action Fortgeschrittene Möglichkeiten beim Einsatz des Geoservers

Anleitung REST API Schneelast-Messsystem SMS

Das eigene Kandidatenfrontend

Aktuelle Technologien zur Entwicklung verteilter Anwendungen RESTful Web Services mit JAX-RS

Inhaltsverzeichnis. 2.1 Eine kurze Geschichte von REST Grundprinzipien Zusammenfassung... 17

Workflow, Business Process Management, 4.Teil

Perl-Praxis. CGI-Skripte. Madis Rumming, Jan Krüger.

Web 2.0 Architekturen und Frameworks

Eine Untersuchung der Funktionen des Apache Wicket Webframeworks

Lernziele. World!Wide!Web!-!WWW. Eigenschaften. Das!World!Wide!Web

Neues in ArcGIS Server 9.3 Matthias Schenker ESRI Geoinformatik AG

ASP.NET Web-API - Grundlagen

iport iport Systemarchitektur und Administration Marco Ledwon Verbundzentrale des GBV VZG

HIN Client API. Technische Schnittstelle. Version: 1.0 Datum: Status: Final

Schnittstellenbeschreibung

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

Wolkig bis heiter. Andreas Wismann WHEN OTHERS. APEX als Drehkreuz für Web Service-Anwendungen

SOA mit.net: Vom Geschäftsprozess zur Lösung

NoSQL User Group Cologne

Skalierbare Webanwendungen mit Python und Google App Engine

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen

Typo3 & QFQ. Carsten Rose, I-MATH, University of Zurich, 2017

Web Grundlagen zum Spidering

So legen Sie eine gelöschte Resource wieder an

Auszug aus JAX-WS Folien

Einleitung. Funktion. Panzenböck Phillipp. Download Installation. Testen. Konfiguration

XE IDE Cloud Web. secure Data Agile. RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts. Daniel Wolf Delphi-Praxis

Session Storage im Zend Server Cluster Manager

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Web 2.0 Software-Architekturen

Erweiterung der Autokonfigurationsmethode für Rich Communications Suite enhanced (RCS-e) durch die COCUS AG

Unified-E Standard WebHttp Adapter

Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services?

Implementierung von Web Services: Teil I: Einleitung / SOAP

Visualisierung von energiewirtschaftlichen Zeitreihen im Web-Browser. Aachen, Simon Rehker

Netzwerk Technologien in LabVIEW

SOAP und REST Ein Vergleich von service- und ressourcenorientierten Architekturen und deren Einsatz im VMA-Projekt

Standards, Technologien und Architekturen moderner Web-Anwendungen

WebServices: Kommunikation

Dabei sollen die Nutzern nach einer Authentifizierung entsprechend ihren Rechten Begriffe ändern, anlegen und kommentieren können.

Verteilte Systeme: Übung 4

Systembeschreibung. Masterplan Kommunikationsinterface. ASEKO GmbH. Version 1.0 Status: Final

Modul Grundlagen der Internettechnologien. von Günter Schoppe. Hannover,

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Architektur von SOAP basierten Web Services

Motivation. Inhalt. URI-Schemata (1) URI-Schemata (2)

Kapitel WT:VI (Fortsetzung)

Web Services. Standards und Realisierung in Java

Java - Webapplikationen

V by WBR1/BFH-TI 2011 by MOU2/BFH-TI

Dokumentation der REST- Schnittstelle des Funk- Sensorsystem GesySense. Gesytec GmbH Pascalstr. 6 D Aachen

3. Baumstrukturen. 3.1 Dateien und Ordner

PL/SQL Web-Services mit Oracle 11g

Transkript:

28.11.2005 Architektur von REST basierten Webservices Referent MARK ALTHOFF REST was invented by ROY T. FIELDING and RICHARD N. TAYLOR

Geschichtlicher Hintergrund von REST 1994-1995 taucht der Begriff «REST» erstmals in Roy T. Fieldings Dissertation auf Fielding führt den Erfolg des Webs auf einige Eigenschaften der verwendeten Mechanismen und Protokolle zurück. IET entwickelte ein Modell, einen Architekturstil, der die Charakteristika vereinen sollte, die das Web bisher so erfolgreich gemacht hatten. dieses idealisierte Modell wurde REST genannt und wurde der Grundstock für die moderne Webarchitektur und Vorlage für das Redesign von HTTP und URI. Das Web ist demnach eine Ausprägung des REST Architekturstil 1/11

Was bedeutet REST? Akronym für Representational State Transfer Es geht um Begriffe wie: Representation (Representational) Zustand(State) Übergang(Transfer) 2/11

Resources Alles von Interesse kann eine Resource sein: ein Text Dokument, ein Bild, eine Video oder Audio Datei Kollektion von mehreren anderen Resources eine Person etc früher: direkte Verlinkung eines Dokumentes eine Resource im Sinne von «REST» ist ein Verweis auf ein Konzept Grund: Konsistenz des Zugriffs auf die Resource zu erhalten statische und varianzenreiche Resources 3/11

Adressierung von Resources REST benutzt zur Adressierung von Resources URI (Uniform Resource Identifier) einheitlicher Bezeichner für physikalische oder abstrakte Resources Aufbau: http://www.werkzeuge.de/hammer Protokoll Server Pfad URL URI URN Ziel: Identifier finden, der möglichst nah an der Semantik der Resource ist. ermöglicht Verlinkung vor der eigentlichen Existenz der Resource 4/11

Representational State Transfer Zugriff, Modifikation und Transfer läuft über Representation der Resource Server hat internes Mapping, von einem Identifier auf einen Satz von Representationen Server kann auf Anfrage beliebige Formate zurückgeben: Text, HTML, JPEG, GIF oder eben XML Loose Coupling (Implementierung transparent) Content Negotiation (Content-Type Aushandlung zwischen Server und Client) 5/11

Beispiel Response für www.werkzeuge.de/hammer : <?xml version= 1.0?> <p:hammer xmlns:p= http://www.werkzeuge.de xmlns:xlink= http://www.w3.org/1999/xlink >... <hammer id= 00101 xlink:href= http://www.werkzeuge.de/hammer/00101 /> <hammer id= 00102 xlink:href= http://www.werkzeuge.de/hammer/00102 /> <hammer id= 00103 xlink:href= http://www.werkzeuge.de/hammer/00103 /> <hammer id= 00104 xlink:href= http://www.werkzeuge.de/hammer/00104 />... </p:hammer> machine-to-machine processing Resources sind keine Inseln (Verlinkung für weitere Details) 6/11

Representational State Transfer jede Representation versetzt den Client in einen «State» (Zustand) benutzen eines Hyperlinks gibt eine weitere Representation einer anderen Resource zurück Client wird erneut in einen «State» versetzt Zitat Fielding zu dem Thema: REST is intended to evoke an image of how a well-designed web application behaves: a network of web pages (a virtual state machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transfered to the user and rendered for their use. 7/11

Die Rolle des Hyper-Text-Transfer-Protokoll bei REST beinhaltet ähnlich einer Datenbank Abfragesprache wie SQL einen Satz von Befehlen: GET (SELECT) POST (UPDATE) PUT (INSERT) DELETE (DELETE) und andere Caching Funktion HTTP Authentifizierung REST ist HTTP Manipulation addressierbarer Resources 8/11

Anforderungen an eine HTTP Message bei REST alle REST Interaktionen sind stateless! jeder Request muss alle notwendigen Informationen beinhalten Folge: Zustände müssen nicht gespeichert werden parallel laufende Interaktionen möglich Nachrichten können isoliert verstanden werden Fehlerzustände leichter behebbar 9/11

Ein Webservices auf REST Basis Bestellservice von Werkzeugen unter: werkzeuge.de/bestellung Anbieter spezifiziert eine Bestellung in einem WSDL Dokument Client gibt Bestellung in einem Formular ein Bestellung wird konform des WSDL Dok. per HTTP POST an werkzeuge.de/bestellung geschickt Server antwortet mit URI für die neue Bestellung als Resource Bestellung wird zu einer gemeinsamen Resource zw. Server und Client 10/11

Charakteristiken eines REST Webservices Client Server: pull-based Interaction: Konsumenten ziehen vom Server Informationen Stateless: jede Anfrage muss alle Informationen beinhalten Cache: Netzwerkkommunikation gering zu halten Uniform Interface: einheitlicher Zugriff auf Resources per: HTTP POST, PUT, GET... Namentliche Resourcen: System aus Resource-Konzepten, die per URI addressiert sind. Verlinkung von Resources: ermöglicht dem Client das Springen von einem «State» zum nächsten In Schichten aufgebaute Komponenten: Cache oder Proxy für Performance und Sicherheit 11/11

Danke für die Aufmerksamkeit