Я ищу какое-то направление в отношении дизайна URI для API RESTful. Я собираюсь иметь несколько вложенных связанных ресурсов и в настоящее время разработал свой URI, похожий на этот пост: Иерархический дизайн URL-адреса RESTful
Следующий пример - это не то, что я создаю, но, я думаю, хорошо иллюстрирует мою ситуацию. (Предположим, что шоу может принадлежать только одной сети).
/networks [GET,POST]
/networks/{network_id} [GET,PUT]
/networks/{network_id}/shows [GET,POST]
/networks/{network_id}/shows/{show_id} [GET,PUT]
/networks/{network_id}/shows/{show_id}/episodes [GET,POST]
/networks/{network_id}/shows/{show_id}/episodes/{episode_id} [GET,PUT]
Мое положение будет еще два уровня дальше с ассоциациями, но все ассоциации являются одними для многих. Я рассматриваю возможность переключения на нечто подобное:
/networks [GET,POST]
/networks/{network_id} [GET,PUT]
/networks/{network_id}/shows [GET,POST]
/shows [GET]
/shows/{id} [GET,PUT]
/shows/{id}/episodes [GET,POST]
/episodes [GET]
/episodes/{id} [GET,PUT]
Мои вопросы:
- Является ли второй пример действительным дизайном REST?
- Должен ли я рассмотреть возможность реализации обоих путей?