Un URI de ressource devrait se lire comme un chemin nominal vers une chose, pas comme une action. La méthode HTTP fournit déjà le verbe, donc l'URI n'a qu'à identifier la ressource clairement et de façon cohérente.
Un URI de ressource devrait se lire comme un chemin nominal vers une chose, pas comme une action. La méthode HTTP fournit déjà le verbe, donc l'URI n'a qu'à identifier la ressource clairement et de façon cohérente.
GET /users/42 — et non GET /getUser?id=42. La méthode (GET) est le verbe./users est la collection ; /users/42 en est un membre. Rester au pluriel partout le rend prévisible./users/42/orders = « les orders appartenant à l'user 42 ».kebab-case, en minuscules. /blog-posts, pas /blogPosts ni /Blog_Posts./users?role=admin&sort=-created_at./users collection d'users
/users/42 un seul user
/users/42/orders orders appartenant à l'user 42 (sous-collection)
/users/42/orders/1001 un order précis de cet user
/orders/1001 le même order, adressable au niveau supérieur aussi
GET /users/42/orders?status=shipped&sort=-created_at&page=2 HTTP/1.1
Accept: application/json
Évitez l'imbrication profonde au-delà d'un ou deux niveaux — /users/42/orders/1001/items/5/reviews devient fragile. Une fois qu'un order a son propre ID, préférez /orders/1001. Pour les actions qui ne rentrent pas dans CRUD (p. ex. « envoyer un email »), une sous-ressource de style contrôleur est acceptable : POST /users/42/verify-email.
Un nommage cohérent est ce qui rend une API intuitive — un développeur qui a vu /users et /users/42 peut correctement deviner /products et /products/99 sans lire la doc. Les recruteurs s'en servent pour évaluer si vous pensez en ressources (l'état d'esprit REST) plutôt qu'en appels RPC (/doThisThing). Les anti-patterns les plus courants — verbes dans le chemin, pluralisation incohérente, et URL profondément imbriquées — rendent tous une API plus difficile à apprendre et à maintenir, et signalent un développeur qui n'a pas intériorisé la contrainte d'uniform interface de REST. Une bonne conception d'URI garde aussi les préoccupations séparées : l'identité dans le chemin, le filtrage et la pagination dans la query string, ce qui garde le caching et le routing propres.
Une bibliothèque de questions d'entretien IT avec des réponses détaillées — du Junior au Senior.
Faire un don