web-dev-qa-db-fra.com

Différence entre WSDL 2.0, WADL et XRD?

  • WSDL 2.0: www.w3.org/TR/wsdl20/
  • WADL www.w3.org/Submission/wadl/
  • XRD www.oasis-open.org/committee/download.php/35274/xrd-1.0-wd10.html

Les trois peuvent être utilisés a REST descripteurs API. Quelles sont les différences? Je sais que c'est une question passionnée, mais je veux simplement une comparaison, pas une guerre de flammes: P

39
jonathanberi

WADL (Web Application Description Language)

WADL est une norme pour décrire les applications Web basées sur HTTP, généralement REST services Web. Ainsi, WADL peut être considéré comme un REST équivalent de WSDL 1.1).

WSDL (langage de description des services Web)

WSDL 2.0 peut être utilisé pour décrire les services Web REST et donc en concurrence avec WADL. Mais il a une portée plus large.

XRD (descripteur de ressource extensible)

Citant ce blog message d'Eran Hammer-Lahav ( un contributeur fréquent à OAuth, Discovery, XRD et à d'autres spécifications et normes émergentes axées sur la communauté - et directeur du développement des normes chez Yahoo!):

XRD est un format générique simple pour décrire les ressources. Les documents descripteurs de ressources fournissent des informations lisibles par machine sur les ressources (métadonnées de ressource) dans le but de promouvoir l'interopérabilité et aident à interagir avec des ressources inconnues qui prennent en charge les interfaces connues.

Par exemple, une page Web sur une réunion à venir peut fournir dans son document descripteur l'emplacement des informations de disponibilité de l'organisateur de la réunion pour négocier potentiellement une heure différente. Le descripteur d'une page de profil de réseau social peut identifier l'emplacement du carnet d'adresses de l'utilisateur ainsi que les comptes sur d'autres sites. Un service Web implémentant un protocole API peut annoncer quels composants facultatifs du protocole sont pris en charge.

Sommaire

Ainsi, alors que WSDL 2.0 est en concurrence avec WADL en tant que langages de description du service Web REST (WDL 2.0 en a plus mais oublions que pour l'instant), XRD est un format de découverte des métadonnées pour tout URI (la découverte OpenID étant l'un des principaux cas d'utilisation). XRD (qui a ses racines dans la communauté d'identité) est différent.

38
Pascal Thivent

Selon le Dr M. Elkstein dans son tutoriel REST ,

WSDL est le langage de description des services Web. Il est couramment utilisé pour décrire en détail les services offerts par un serveur SOAP. Bien que WSDL soit flexible dans les options de liaison de service (par exemple, les services peuvent être proposés via des serveurs de messagerie SMTP), il ne prenait pas en charge à l'origine les opérations HTTP autres que GET et POST. Étant donné que les services REST utilisent souvent d'autres verbes HTTP, tels que PUT et DELETE, WSDL était un mauvais choix pour documenter les services REST.

WADL est le langage de description d'application Web. WADL est soutenu par Sun Microsystems. Comme le reste de REST, WADL est léger, plus facile à comprendre et à écrire que WSDL. À certains égards, il n'est pas aussi flexible que WSDL (aucune liaison aux serveurs SMTP), mais il est suffisant pour n'importe quel service REST et beaucoup moins verbeux.

15
Hulk1991