Aller au contenu principal

Associations

doitLorsqu'une ressource ne peut exister qu'à travers son association à une autre ressource, on parle alors de "composition"et on applique un principe de hiérarchie à sa localisation.

Exemple : obtenir l'adresse du contact 678

GET /contacts/678/address

Ici l'adresse est considérée comme une partie du contact, qui a sa propre structure mais dont la durée de vie est intimement liée au contact.

devraitIl est parfois pertinent d'utiliser cette approche pour proposer un alias, alternative pratique pour accéder à une ressource associée qui n'est pas une composition, dans ce cas la localisation par hiérarchie vient en plus de la localisation directe (plusieurs façons d'accéder à une même ressource).

Exemple : obtenir les amis du contact 678

GET /contacts?friend=678

Alias plus élégant :

GET /contacts/678/friends

Dans tous les cas, veillez à ne pas abuser de la notion de hiérarchie dans la localisation de ressources, aller au delà de deux niveaux devrait interroger sur la qualité du modèle.