2015-06-10 47 views
-1

我有兩個關於REST的問題關於REST的幾個問題

1)我應該總是儘量避免使用REST時發送輸入數據嗎?我的所有請求是否應該儘量通過uri傳遞大部分數據,而不是通過郵寄?

2)以下兩種格式中哪一種更「RESTful」?

/任務/刪除/ {TASK_ID}

/任務/ {TASK_ID} /刪除/

+1

對於第二個問題,既不是「RESTful」 - 你應該用HTTP DELETE調用調用'/ tasks/{id}'。 – Mike

+0

我知道有時候很難推薦書籍,但是我閱讀了一本僅有100頁長的小書,它很容易回答這類問題:OReilly的REST API設計規則手冊 – Marged

回答

1

1)我應該儘量避免使用REST時發送的輸入數據?我的所有請求是否應該儘量通過uri傳遞大部分數據,而不是通過郵寄?

如果您發佈了大量資源,那很好。如果您需要在概念上進行GET,但將其轉變爲POST,以便您可以將GET參數編碼到請求正文中,則會與REST發生衝突。

2)以下兩種格式中哪一種更「RESTful」?

/tasks/delete/{task_id}也沒有/tasks/{task_id}/delete是正確的。 「刪除」是一個動詞,但該URL應該是一個名詞。如果您想刪除任務,請使用DELETE /tasks/{task_id},而不是像POST /tasks/{task_id}/delete那樣的東西。