私の状況は次のとおりです。
Person belongsTo Group
Group hasMany People
When creating a new Person, a Group needs to be specified.
私はRESTに最もよく従うURLを決定しようとしています。現在、私のURLはやや混乱しているため、RESTfulではないと思われます。
ユーザーが次のことを行えるようにする機能があります。
- 単一の人、グループ内のすべての人、またはすべての人を取得します
- グループに新しい個人を追加します(グループを指定する必要があります)
- 個人情報を編集する
- 人を削除する
私のURLは次のとおりです。
得る
/people/group/id -> Gets all People in a Group
/people/person/id -> Gets a single Person
/people/all -> Gets all People
置く
/people/group/id -> Add a new Person to a Group
役職
/people/person/id -> Edit a Person
消去
/people/person/id -> Delete a Person
URLをよりRESTfulにするために何ができますか?誰か提案はありますか?
私がこれを尋ねる理由は、他の構造について考え、すべてがHTTPリクエストによって単純に決定される方法を確認するためです。例えば:
/people/id
GET retrieves the person, POST updates the person, DELETE removes the person.
「グループ」がない場合、それはとても簡単です。しかし、私の「グループ」の場合、すべての人をGETするためのall inや、新しい人をPOSTする場所を指定するための/ group /idinなどのパラメーターを指定する必要があります。そのようなパラメーターを追加しても、RESTfulを維持できますか?/people/all
/people/groups/id