[英]REST api one-to-many deep relation
我在網站上有這樣的模型: Organization
, Client
和Comment
。
一個Organization
可以有多個Clients
,一個Client
屬於Organization
,一個Client
可以有很多Comments
,一個Comment
屬於一個Client
。
顯然, Client
不是一流的資源,因此我創建了更新並通過像這樣的Organization
獲取它:
POST/organizations/:org_id/clients
創建客戶端PUT/organizations/:org_id/clients/:client_id
更新Client,依此類推
但是,當我想向Client
添加Comment
時,我的路線應該是什么?
應該是
POST/organizations/:org_id/clients/:client_id/comments
要么
POST/clients/:client_id/comments
要么
POST/comments
在許多情況下,REST接口模仿數據結構。
由於您具有屬於客戶的注釋,因此您的內部數據表示形式很可能是一個表,其中主鍵是注釋ID,外鍵是客戶ID。 它與屬於特定組織的客戶無關。 於是
POST/clients/:client_id/comments
如果以后您想編輯一條評論,
PUT/clients/:client_id/comments/:comment_id
從理論上講,您甚至可以將client_id移到post參數中,但是在這種情況下,您將失去列出給定客戶的所有評論的正確方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.