2011-02-10 121 views
6

這樣的事情可能嗎?設計REST的人是否認爲他們會永遠刪除一個東西?REST - 刪除一組對象

所以我們可以說我有10個Foo的ID 1-10

我想刪除ID的3,6,和9單一HTTP DELETE召喚。

有沒有我可以做到這一點,而不會冒犯教皇?

回答

0

我不認爲這是一個問題。

刪除http://www.example.com/foos表示刪除全部。

DELETE http://www.example.com/foos {3,6,9}表示刪除foo的3,6,9

+1

那些括號{#,#,#}是標準的一部分嗎?我以前從來沒有見過。 – 2011-02-10 06:52:33

+0

這只是普通的URI部分。任何資源和資源集合都可以用URI來表示,你可以給URI指定語義。 – Dagang 2011-02-10 07:00:21

+2

@Todd URI中的額外數據看起來很亂,你不喜歡發送數據以便在請求的主體中實際刪除什麼?這是我強烈要考慮的系統,其中默認使用情況是多次刪除。我還打算在沒有身體「無效」行爲的情況下調用「DELETE/foos」。 – thecoshman 2013-07-24 14:36:27

5

大多數API我熟悉不允許多個實體的刪除在同一時間,而是在執行其他操作URL參數如?id=3,6,9? id=3&id=6&id=9的多個實體。因此,這將是相當普遍的執行下列操作之一:

DELETE /foos?id=3,6,9 

DELETE /foos?id=3&id=6&id=9