647 votes

Quelle est la différence entre REST et RESTful ?

Quelle est la différence entre un système REST et un système qui est RESTful ?

D'après certaines choses que j'ai lire La plupart des services dits REST sont en fait des services RESTful. Quelle est donc la différence entre les deux ?

3 votes

La raison de cette question est que si vous lisez l'article du lien et que vous regardez ce que le Dr Fielding pense de la plupart des implémentations REST, ce ne sont pas du tout des systèmes REST. Elles présentent un comportement RESTful mais ne peuvent pas être classées comme des systèmes REST.

5 votes

J'ai lu l'article mais je ne pense pas qu'il l'ait conduit à des distinctions aussi sémantiquement inutiles.

5 votes

Article Wikipedia sur REST - fr.wikipedia.org/wiki/Representational_State_Transfer - deuxième paragraphe - "Se conformer aux contraintes REST est souvent appelé "RESTful"".

571voto

Justin Ethier Points 57486

Transfert d'état représentationnel (REST) est un style d'architecture logicielle. Comme décrit dans une thèse de Roy Fielding, REST est un "style architectural" qui exploite essentiellement la technologie et les protocoles existants du Web.

RESTful est généralement utilisé pour désigner les services web mettant en œuvre une telle architecture.

177 votes

REST est donc l'architecture et RESTful un adjectif ?

6 votes

@manei_cc : Bien qu'en pratique, vous trouverez des services nommés RESTful qui ne suivent pas l'architecture REST et sont essentiellement des REST-like, des REST-wannabies, etc. Donc, faites toujours attention qu'un "service RESTful" n'est pas nécessairement construit en utilisant l'architecture REST, mais vrai comme Justin Ethier a écrit : exploite la technologie et les protocoles existants du Web .

12 votes

RESTful devrait être utilisé pour les API qui respectent vraiment REST. J'ai vu trop de services web "REST" qui n'utilisaient que GET ou POST. RESTful met l'accent sur l'utilisation complète des verbes HTTP et des conventions de dénomination des URL. Mais c'est mon point de vue.

134voto

SingleShot Points 9258

"REST" est un paradigme architectural. "RESTful" décrit l'utilisation de ce paradigme.

1 votes

architect de quoi ? d'urls ? comme https://translation.googleapis.com/language/translate/v2 c'est le style REST ?

4 votes

Une architecture REST requiert de nombreux traits. Vous ne pouvez pas dire que quelque chose adhère aux principes REST en montrant simplement une URL.

42voto

Darrel Miller Points 56797

Comme Jason l'a dit dans les commentaires, RESTful est juste utilisé comme un adjectif décrivant quelque chose qui respecte les contraintes REST.

34voto

Arturo Hernandez Points 485

REST est l'abréviation de "representational state transfer" (transfert d'état représentationnel). Cela signifie que l'état lui-même n'est pas transféré mais qu'une simple représentation de celui-ci l'est. L'exemple le plus courant est une application basée sur un serveur HTML pur (sans javascript). Le navigateur ne sait rien de l'application elle-même, mais par le biais de liens et de ressources, le serveur est capable de transférer l'état de l'application au navigateur. Alors qu'un bouton modifierait normalement une variable d'état (par exemple, une page ouverte) dans une application Windows ordinaire, dans le navigateur, un lien représente un tel changement d'état.

L'idée est d'utiliser l'hypermédia. Et peut-être de créer de nouveaux types d'hypermédia. Potentiellement, nous pouvons étendre le navigateur avec javascript/AJAX et créer de nouveaux types d'hypermédia personnalisés. Et nous aurions une véritable application REST.

C'est ma version courte de ce que signifie REST, le problème est qu'il est difficile à mettre en œuvre. Personnellement, je dis RESTful lorsque je veux faire référence aux principes REST, mais je sais que je ne mets pas vraiment en œuvre le concept REST dans son intégralité. Nous ne disons pas vraiment SOAPful, parce que vous utilisez SOAP ou pas. Je pense que la plupart des gens ne font pas REST de la manière dont il a été envisagé par son créateur Roy Fielding, nous mettons en œuvre des architectures RESTful ou similaires à REST. Vous pouvez voir son thèse de doctorat et vous trouverez l'acronyme REST, mais pas le mot RESTful.

1 votes

Cette réponse est tellement sous-estimée. Cette réponse explique le noyau dur de REST.

0 votes

C'est la réponse que je cherchais. RESTful est une architecture de type REST...

25voto

Claudio Redi Points 34297

REST est un style d'architecture logicielle pour les logiciels distribués.

Le fait de se conformer aux contraintes REST est appelé "RESTful".

Très utilisé aujourd'hui pour construire des services web comme alternative à SOAP.

Voici quelques liens à vérifier

http://en.wikipedia.org/wiki/Representational_State_Transfer
http://www.computerworld.com/s/article/297424/Representational_State_Transfer_REST_
http://www.ibm.com/developerworks/webservices/library/ws-restful/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X