Services Web RESTful - Adressage

L'adressage fait référence à la localisation d'une ressource ou de plusieurs ressources se trouvant sur le serveur. Il est analogue de localiser l'adresse postale d'une personne.

Chaque ressource de l'architecture REST est identifiée par son URI (Uniform Resource Identifier). Un URI est du format suivant -

<protocol>://<service-name>/<ResourceType>/<ResourceID>

Le but d'un URI est de localiser une ou plusieurs ressources sur le serveur hébergeant le service Web. Un autre attribut important d'une demande est VERB qui identifie l'opération à effectuer sur la ressource. Par exemple, dans le chapitre Services Web RESTful - Première application , l'URI esthttp://localhost:8080/UserManagement/rest/UserService/users et le VERBE est GET.

Construire un URI standard

Les points suivants sont importants à prendre en compte lors de la conception d'un URI -

  • Use Plural Noun- Utilisez un nom pluriel pour définir les ressources. Par exemple, nous avons utilisé des utilisateurs pour identifier les utilisateurs en tant que ressource.

  • Avoid using spaces- Utilisez un trait de soulignement (_) ou un trait d'union (-) lorsque vous utilisez un nom de ressource long. Par exemple, utilisez allowed_users au lieu de% 20users autorisés.

  • Use lowercase letters - Bien que l'URI ne soit pas sensible à la casse, il est recommandé de conserver l'URL en minuscules uniquement.

  • Maintain Backward Compatibility- Le service Web étant un service public, un URI une fois rendu public devrait toujours être disponible. Au cas où l'URI serait mis à jour, redirigez l'ancien URI vers un nouvel URI à l'aide du code d'état HTTP, 300.

  • Use HTTP Verb- Utilisez toujours le verbe HTTP comme GET, PUT et DELETE pour effectuer les opérations sur la ressource. Il n'est pas bon d'utiliser le nom d'opérations dans l'URI.

Exemple

Voici un exemple d'URI médiocre pour récupérer un utilisateur.

http://localhost:8080/UserManagement/rest/UserService/getUser/1

Voici un exemple d'un bon URI pour récupérer un utilisateur.

http://localhost:8080/UserManagement/rest/UserService/users/1