私は2つのリソース(ユーザーと1つのリソースとムービーの2つのリソース)用にAPIを構築しようとしています。両方のリソースには関連付けがあります。ユーザーは複数のムービーを持ち、ムービーは複数のユーザーを持ちます。おそらく、私はこのような何か私のAPIを設計したい:アソシエーションを含むRESTfulなAPIデザイン
/api/users/
/api/users/:id
/api/users/:id/movies
/api/movies/
/api/movies/:id
/api/movies/:id/users
しかし、ここで問題があります:私はまた、APIデータをフェッチするために、クライアント側でBACKBONE.JSを使用しています。一見、それは良いだろう、
/api/users/:id/movies/:id
しかし:私は
/api/users/:id/movies
でコレクションを作成した場合、これはGETリクエストのためにうまく動作しますが、POSTやPUTリクエストする場合は、一見、その後に向けられます代わりに
/api/movies/:id
に投稿された場合あれは正しいですか?人々はRestFulの協会をどのように扱いますか?
ありがとうLaurent。バックボーンはURLにIDを付加して、それが所属するコレクションに新しいモデルをPOSTまたはPUTします。つまり、コレクションにはURL/api/users/1/moviesがあり、POSTはURL/api/users/1/movies /:idを自動的に使用します。私の場合、代わりにPOST url be/api/movies /:idを使用する方が適切ですが、おそらく私は間違っています。サーバー側では、/ api/users/1/movies /:idにPOSTを処理する可能性があります。 – bento