Я пытаюсь создать API для двух ресурсов, один с пользователями, а другой с помощью фильмов. Оба ресурса имеют ассоциации - у пользователя будет несколько фильмов, а в фильме будет несколько пользователей. По-видимому, я бы дизайн моего API что-то вроде этого:Дизайн RESTful API с ассоциациями
/api/users/
/api/users/:id
/api/users/:id/movies
/api/movies/
/api/movies/:id
/api/movies/:id/users
Но вот проблема: Я также использую Backbone.js на стороне клиента для извлечения данных API. Если Если я создаю коллекцию в
/api/users/:id/movies
, то это будет хорошо работать для запросов GET, но POST и PUT запросы, казалось бы затем быть направлены на:
/api/users/:id/movies/:id
Но, по-видимому, было бы лучше если оно было отправлено на адрес
/api/movies/:id
вместо этого. Это верно? Как люди обычно имеют дело с ассоциациями RestFul?
Спасибо Laurent. Магистраль добавляет идентификатор к URL-адресу POST или PUT новую модель к коллекции, к которой она принадлежит. Другими словами, коллекция будет иметь URL/api/users/1/movies, а POST будет автоматически использовать URL/api/users/1/movies /: id. Для меня кажется более уместным, чтобы URL-адрес POST был/api/movies /: id, но, возможно, я ошибаюсь. На стороне сервера я мог бы, возможно, обрабатывать POST в/api/users/1/movies /: id. – bento