Question

Je recherche de bons liens avec les meilleures pratiques et des exemples de code sur la création REPOSservices Web complets utilisant .NET.

De plus, toute autre contribution que vous pourriez avoir concernant REST serait grandement appréciée.

Était-ce utile?

La solution

Services de données ADO.Net le rend vraiment facile à construire et consommer Services Web RESTful dans le monde .Net, mais il est néanmoins important de comprendre les concepts.Comparé à WCF (qui a ajouté la prise en charge de REST plus tard), ADO.Net Data Services a été conçu principalement pour REST.

Lignes directrices pour la création de services Web RESTful a toutes les informations sur les ressources dont vous avez besoin.

Ceci est un autre utile entrée de blog:

Les contraintes d'interface uniforme décrivent comment un service conçu pour le Web peut participer efficacement à l'architecture Web.Ces contraintes sont décrites brièvement comme suit :

1) Identification des ressources :Une ressource est tout élément d'information qui peut être nommé et représenté (par ex.un document, le cours d'une action à un moment donné, la météo actuelle à Las Vegas, etc.).Les ressources de votre service doivent être identifiées à l’aide d’URI.

2) Manipulation des ressources via des représentations :Une représentation est la représentation physique d'une ressource et doit correspondre à un type de média valide.L'utilisation de types de médias standard comme formats de données derrière votre service augmente la portée de votre service en le rendant accessible à un large éventail de clients potentiels.L'interaction avec la ressource doit être basée sur la récupération et la manipulation de la représentation de la ressource identifiée par son URI.

3) Messages auto-descriptifs :Suivre les principes d'apatridie dans les interactions de votre service, utiliser des types de médias standard et indiquer correctement la possibilité de mise en cache des messages via l'utilisation de la méthode HTTP et les en-têtes de contrôle garantit que les messages sont auto-descriptifs.Les messages autodescriptifs permettent aux messages d'être traités par des intermédiaires entre le client et le serveur sans impacter ni l'un ni l'autre.

4) L'hypermédia comme moteur de l'état d'application :L’état de l’application doit être exprimé à l’aide d’URI et de liens hypertextes pour effectuer la transition entre les états.Il s’agit probablement de la contrainte architecturale la plus controversée et la moins comprise exposée dans La thèse de Roy Fielding.En fait, la thèse de Fielding contient des arguments explicites contre l'utilisation de cookies HTTP pour représenter l'état de l'application pour insister sur ce point, mais il est souvent ignoré.

Autres conseils

Fondation de communication Windows prend en charge le modèle REST depuis .NET 3.5.

Vous pouvez trouver de la documentation et des exemples de code sur MSDN :

REPOS et vérole

Quelques ressources pour apprendre REST :

La meilleure introduction que j'ai lue est celle Livre sur les services Web RESTful, qui va au-delà de l'explication du modèle et des principes et vous montre réellement comment concevoir un service Web RESTful.La plus utile est sa liste de contrôle sur la façon d'écrire/spécifier une API REST :

  1. Déterminez l'ensemble de données [c.-à-d.spécifier le modèle de données].
  2. Divisez l'ensemble de données en ressources.Pour chaque type de ressource :
  3. Nommez les ressources avec des URI.
  4. Exposer un sous-ensemble de l'interface uniforme [c.-à-d.préciser quelles méthodes HTTP sont utilisées et ce qu'elles font].
  5. Concevoir la ou les représentations acceptées du client [par ex.le format XML que vous pouvez PUT ou POST].
  6. Concevoir la ou les représentations fournies au client [par ex.le XML que vous récupérez].
  7. Intégrez cette ressource aux ressources existantes, à l’aide de liens et de formulaires hypermédias.
  8. Considérez le déroulement typique des événements :qu'est-ce qui est censé se passer ?[C'est comme un scénario de réussite principal d'un cas d'utilisation.]
  9. Tenez compte des conditions d’erreur.[Cela ressemble à des scénarios d'exception de cas d'utilisation.]

Les articles du "Web RESTful"série à xml.com sont une excellente introduction.

L'auteur (Joe Gregorio, de la renommée du protocole de publication atomblog. "RESTifier DayTrader"(L'architecture REST appliquée à une demande de trading d'actions de référence) est un bon point de départ.J'aime aussi "Pourquoi tant de frameworks web Python ?", qui montre l'implémentation d'un petit framework web reposant en Python.

Lorsque j'ai commencé à développer des services Web REST, j'ai lu le livre de règles de conception d'API REST de Mark Masse.Une fois que vous connaîtrez les bases et la théorie, vous pourrez implémenter REST avec WCF, HTTPListener ou ServiceStack.Tous ces frameworks sont .NET et assez bien documentés...

Je vous recommanderais la pile de services (http://www.servicestack.net/), il y a suffisamment d'informations sur le Web pour commencer.

WCF propose l'API Web ASP.NET, c'est OK, mais je ne l'utilise pas.

De toute façon, il n’existe pas de bon framework REST aujourd’hui, vous devez en choisir un que vous trouvez facile à utiliser puis appliquer la théorie que vous avez apprise dans le livre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top