J'ai le scénario (hypothétique) suivant:Correct ReST URI design
Demande de rapport sur les étudiants dans les classes dans les écoles. J'ai 3 tables école, classe, étudiant. La classe a un FK school_id et l'étudiant a un FK class_id.
J'ai mes entités toutes configurées et prêtes à l'emploi et je suis sur le point de les exposer via une interface de repos.
Si mes URIs ressembler à ceci: Écoles - Liste des écoles
écoles/{id} - école spécifique
écoles/{id}/cours - liste des classes
écoles/{id}/classes/{id} - classe spécifique
écoles/{id}/classes/{id}/étudiant - étudiants liste
écoles/{id}/classes/{id}/étudiant/{id} - étudiants spécifiques
Même si dans le cas d'un étudiant spécifique, je vais ignorer le je vais ignorer l'id de l'école et l'ID de la classe comme tout ce qui m'importe pour Ma requête est l'identifiant de l'étudiant.
Dois-je avoir: Écoles/étudiant/{id} - pour des étudiants spécifiques.
Pour la section des listes, la valeur de la liste des étudiants serait-elle une liste d'URI faisant référence à l'emplacement canonique de chaque étudiant spécifique dans la liste? – ScottCher
+1 en raison de la référence à l'ajout de l'URL canonique à l'emplacement du contenu. Bon conseil. – ScottCher
@ ScottCher, je ne pense pas que ce soit important, mais personnellement, dans le contenu de la page, j'utiliserais des liens qui ajoutent simplement l'identifiant de l'étudiant à l'URL actuelle. De cette façon, le contexte de l'URL sert de simple fonctionnalité "fil d'Ariane". –