2017-02-15 202 views
0

我正在開發REST API。有'用戶'和'任務'資源,每個用戶都可以創建'UserTask'。那麼,什麼樣的URL符合REST API標準和慣例?最後的方法是更合乎邏輯的?創建REST API資源

post: users/{id}/tasks 

post: tasks/users/{id} 

是否有意義兼得?

我已經閱讀了許多關於它的主題,但在這個特殊情況下沒有找到任何有用的東西。

回答

0

如果任務屬於特定用戶,我會去:

POST /users/{user-id}/tasks 

以獲取特定任務的表示,你可以使用:

GET /users/{user-id}/tasks/{task-id} 
+0

謝謝卡西歐,請參閱下面的我的額外問題請 –

+0

@VasyaFortochkin我會有不同的控制器來處理這個。 –

+0

@VasyaFortochkin如果我的回答適合您的需求,請考慮接受它,通過點擊我的答案旁邊的綠色勾號:) –

0

如果您可能會考慮對象定位哲學,那麼用戶將執行任務而不是任務擁有用戶。

所以你可以考慮使用這個:post: users/{id}/tasks

+0

感謝您的回答。 Folowing這應該UserService包含方法'createTask'或我可以使用TaskService?因爲在這種情況下,我得到「過載」用戶服務+控制器和瘦任務服務+控制器。這讓我想也許我做錯了什麼.. –