2014-03-25 145 views
0

我有(JSON的)在/api/foo/1/追加HTTP動詞

{name: "foo", bar_pks: [10, 11, 12]}

現在我想添加一個API,附加到bar_pks這樣的資源。沒有可以追加的HTTP動詞,我可以找到。如果我使用{bar_pks: [13]}/api/foo/1/進行修補,它將覆蓋而不是追加。

  1. 有一個動詞與附加更一致?
  2. 如果我修改patch這個資源總是做追加,是否會晚一點咬我?

(我使用Django和Tastypie,但希望有一個語言無關的答案。)

回答

1

是否有令人信服的理由不這樣做在客戶端的追加和使用PUT/PATCH送更新值返回到服務器?

我看到一對夫婦的選擇,如果你死了,設置這樣做:

  1. 的支撐柱,一個新的URI這被解釋爲追加到 列表。
  2. PATCH上的指示 更改的查詢參數應該追加而不是覆蓋。

這些都不是很好的選擇,我不認可使用它們。

+0

我想避免在客戶端使用append,因爲它需要兩個API調用 - 首先獲取列表。 (我是一個列表頁面,沒有pks列表。)我可能會將帖子轉到其他頁面。 – shabda