682 Stimmen

Was ist der Unterschied zwischen REST und RESTful?

Was ist der Unterschied zwischen einem REST-System und einem System, das RESTful ist?

Aus einigen Dingen, die ich lesen Die meisten so genannten REST-Dienste sind eigentlich RESTful-Dienste. Was ist also der Unterschied zwischen den beiden.

3 Stimmen

Der Grund für die Frage ist, dass die meisten REST-Implementierungen gar keine REST-Systeme sind, wenn man den Artikel in dem Link liest und nachschlägt, was Dr. Fielding über sie denkt. Sie zeigen zwar ein REST-gerechtes Verhalten, können aber nicht als REST-Systeme eingestuft werden.

5 Stimmen

Ich habe den Artikel gelesen, aber ich glaube nicht, dass er ihn zu solchen semantisch nutzlosen Unterscheidungen veranlasst hat.

7 Stimmen

Wikipedia-Artikel über REST - de.wikipedia.org/wiki/Darstellung_Zustand_Übertragung - Zweiter Absatz - "Die Einhaltung der REST-Einschränkungen wird oft als 'RESTful' bezeichnet."

586voto

Justin Ethier Punkte 126797

Repräsentative Zustandsübertragung (REST) ist ein Stil der Softwarearchitektur. Wie in einer Dissertation von Roy Fielding beschrieben, ist REST ein "architektonischer Stil", der im Wesentlichen die bestehende Technologie und die Protokolle des Webs nutzt.

RESTful wird in der Regel für Webdienste verwendet, die eine solche Architektur umsetzen.

189 Stimmen

REST ist also die Architektur und RESTful ein Adjektiv?

7 Stimmen

@manei_cc: In der Praxis findet man jedoch Dienste, die als RESTful bezeichnet werden, aber nicht der REST-Architektur folgen und im Grunde genommen REST-ähnlich sind, REST-Wannabies usw. Achten Sie also immer darauf, dass ein "RESTful Service" nicht unbedingt mit der REST-Architektur aufgebaut ist, sondern wie Justin Ethier schrieb: nutzt die bestehende Technologie und die Protokolle des Web .

13 Stimmen

RESTful sollte für APIs verwendet werden, die REST wirklich respektieren. Ich habe zu viele "REST"-Webservices gesehen, die nur GET oder POST verwenden. RESTful legt den Schwerpunkt auf die vollständige Verwendung von HTTP-Verben und URL-Namenskonventionen. Aber das ist nur mein Standpunkt.

373voto

Pramod Nikumbh Punkte 3161

REST-basierte Dienste/Architektur vs. RESTFUL Dienste/Architektur

Um diese 2 zu unterscheiden oder zu vergleichen, sollten Sie wissen, was REST ist.

REST ( RE Präsentation S tate T ransfer) ist im Grunde ein architektonischer Entwicklungsstil mit einigen Prinzipien:

  • Sie sollte zustandslos sein

  • Er sollte auf alle Ressourcen des Servers zugreifen, indem er nur URI

  • Es hat keine eingebaute Verschlüsselung

  • Sie hat keine Sitzung

  • Es verwendet ein einziges Protokoll - HTTP

  • Für die Durchführung von CRUD-Operationen sollte es HTTP-Verben verwenden wie get , post , put y delete

  • Es sollte das Ergebnis nur in Form von JSON oder XML, Atom, OData usw. (leichtgewichtige Daten) zurückgeben.

REST based services einige der oben genannten Grundsätze befolgen, aber nicht alle

RESTFUL services bedeutet, dass sie alle oben genannten Grundsätze befolgt.

Es ist ähnlich wie das Konzept der:

Object oriented languages alle OOP-Konzepte unterstützen, Beispiele : C++, C#

Object-based languages einige der OOP-Funktionen unterstützen, Beispiele : JavaScript, VB


Ejemplo :

ASP Dot NET MVC 4 ist REST-Based während die Microsoft WEB API RESTFul .

MVC unterstützt nur einige der oben genannten REST-Prinzipien, während WEB API alle oben genannten REST-Prinzipien unterstützt.

MVC unterstützt nur die folgenden Funktionen der REST-API

  • Wir können auf die Ressource über URI zugreifen

  • Es unterstützt das HTTP-Verb für den Zugriff auf die Ressource vom Server

  • Es kann die Ergebnisse in Form von JSON, XML, das ist die HTTPResponse zurück.

Gleichzeitig wird jedoch in MVC

  • Wir können die Sitzung verwenden

  • Wir können es zustandsabhängig machen

  • Wir können ein Video oder ein Bild von der Aktionsmethode des Controllers zurückgeben, was grundsätzlich gegen die REST-Prinzipien verstößt

Deshalb ist MVC REST-Based in der Erwägung, dass die WEB API alle oben genannten Grundsätze unterstützt und RESTFul .

28 Stimmen

Ich verstehe nicht, warum dies heruntergestuft wurde, denn diese Antwort enthält viele klärende Informationen zu der Frage.

11 Stimmen

Beste Antwort bisher

5 Stimmen

Dies ist die beste Antwort.

138voto

SingleShot Punkte 18270

"REST" ist ein architektonisches Paradigma. "RESTful" beschreibt die Verwendung dieses Paradigmas.

1 Stimmen

architect von was? von Urls? wie https://translation.googleapis.com/language/translate/v2 das ist der REST-Stil?

4 Stimmen

Eine REST-Architektur erfordert viele Eigenschaften. Man kann nicht sagen, dass etwas den REST-Grundsätzen entspricht, wenn man nur eine URL angibt.

43voto

Darrel Miller Punkte 133891

Wie Jason in den Kommentaren sagte, wird RESTful nur als Adjektiv verwendet, das etwas beschreibt, das die REST-Bedingungen einhält.

38voto

Arturo Hernandez Punkte 2439

REST steht für Representational State Transfer. Das bedeutet, dass der Zustand selbst nicht übertragen wird, sondern lediglich eine Repräsentation desselben. Das häufigste Beispiel ist eine rein HTML-basierte Serveranwendung (kein Javascript). Der Browser weiß nichts über die Anwendung selbst, aber über Links und Ressourcen ist der Server in der Lage, den Zustand der Anwendung an den Browser zu übertragen. Während eine Schaltfläche in einer normalen Windows-Anwendung normalerweise eine Zustandsvariable (z. B. "Seite geöffnet") ändern würde, gibt es im Browser einen Link, der eine solche Zustandsänderung darstellt.

Die Idee ist, Hypermedia zu verwenden. Und vielleicht neue Hypermedia-Typen zu schaffen. Möglicherweise können wir den Browser mit Javascript/AJAX erweitern und neue benutzerdefinierte Hypermedia-Typen erstellen. Und wir hätten eine echte REST-Anwendung.

Das ist meine Kurzversion dessen, wofür REST steht. Das Problem ist, dass es schwer zu implementieren ist. Ich persönlich sage "RESTful", wenn ich auf die REST-Prinzipien verweisen will, aber ich weiß, dass ich nicht wirklich das ganze Konzept von REST umsetze. Wir sagen nicht wirklich SOAPful, weil man entweder SOAP verwendet oder nicht. Ich glaube, die meisten Leute setzen REST nicht so um, wie es sich sein Schöpfer Roy Fielding vorgestellt hat, sondern wir implementieren tatsächlich RESTful oder REST-ähnliche Architekturen. Sie können seine Dissertation und Sie werden das Akronym REST finden, aber nicht das Wort RESTful.

2 Stimmen

Diese Antwort wird so unterschätzt. Diese Antwort erklärt die Kernstück von REST.

0 Stimmen

Das ist die Antwort, die ich gesucht habe. RESTful ist eine REST-ähnliche Architektur...

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X