2015-05-04 161 views
0

我在嘗試刪除連接到產品的一些項目。像這樣:使用REST DELETE的正確方法?

DELETE /products/Special product/11 

因此,「特殊產品」中的第11項將被刪除?這是使用動詞DELETE的正確方法嗎?我應該url編碼Special product對不對?

特殊產品是而不是存儲在數據庫中。所以我不能使用一些ID。我必須像這樣寫出來(alpha +數字)。

回答

1

如果

/products/Special prodcut 

收集資源的所有 「特殊產品」,如果

/products/Special product/11 

是ID爲11的 「特殊產品」 的資源,那麼你的DELETE使用是RESTful。

1

據我瞭解,你的產品

/products 

您選擇「特殊產品」(其某種標識符?)

/products/special product/ 

這一產品集合包含多個「項目」?你想刪除連接到「特殊產品」與id = 11的項目?如果是這種情況,則uri應該看起來更像

DELETE /products/special product/items/11 

作爲示例,您擁有包含圖像的相冊。要獲得所有專輯:

GET /albums 

爲了得到一張專輯

GET /albums/{albumId} 

要獲得所有圖像的一張專輯

GET /albums/{albumId}/images 

刪除/從一個刪除一個圖像/這張專輯

DELETE /albums/{albumId}/images/{imageId}