[英]REST API: append 'bulk' to api to create bulk create on same resource?
我有一個資源class
。 我需要兩個API:
在REST標准中,我應該創建2個API:
/classes/bulk/
-用於批量創建 /classes/
-創建一個類。 這種方法對我來說似乎不是必需的,是嗎? 為此使用查詢參數是否更RESTful: /classes?type=bulk
?
同樣,批量調用和非批量調用的200的處理邏輯和響應模式也不同
這種方法對我來說似乎不是RESTful的?
URI拼寫與REST體系結構無關。 是否將/bulk
附加到URI不會使您的應用程序更加RESTful。
要在URI中使用/bulk
,也可以使用相同的URI處理一個或多個資源的創建。 考慮到您的資源是一條消息 。 然后,您可能會得到以下內容:
POST /api/messages HTTP/1.1
Host: example.org
Content-Type: application/json
{
"to": "John"
"content": "Hi"
}
POST /api/messages HTTP/1.1
Host: example.org
Content-Type: application/json
[
{
"to": "John"
"content": "Hi"
},
{
"to": "James"
"content": "Hey"
},
{
"to": "Sarah"
"content": null
}
]
記住操作是否為原子操作也很重要。 如果一封郵件中包含無效數據,則您可以拒絕也可以不拒絕整個請求。
如果操作是原子操作, 則可以使用400
或422
報告無效數據。 如果該操作不是原子操作, 則可以使用207
報告每個資源的操作結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.