我想使用save()將模型發送到REST服務,但我需要傳遞頭部參數以及json數據,以便調用正確的服務(spring可以使用標題將呼叫路由到正確的處理程序)。也就是說,我並沒有真正保存這個模型,我正在執行一個特定的操作(在這種情況下,這是一個批准操作)。 PUT url應該是這樣的:Backbone.js - 保存帶有頭部參數的模型
http://server/name/1
而且這個不應該改變,因爲資源標識沒有改變。但是,標題應該包含一個包含動作的標題。在這種情況下,我們將調用參數'command',這個具體示例的命令值是'approve'。
我試着添加對象與數據字段保存:
model.save({data: {command:'approve'}})
但是,這只是增加了與數據的請求主體的JSON數據相關聯的對象。我已經讀過,這種方法在獲取方面可以作爲參數添加給定的數據,但保存似乎不符合我的期望。我單步穿過骨幹代碼,如果數據選項存在保存,它將與模型合併。
因爲我無法控制服務接口,所以我必須研究如何設置標頭參數。任何人都可以給我一些關於如何在保存模型的時候達到這個目的的指導?
謝謝巴特。重寫骨幹同步並不是一個很好的解決這個難題的方法,因爲它需要被完全重寫以消除它當前不受歡迎的行爲,然後我會遇到保持我的版本與框架中的更新一致的問題。事實證明,查詢字符串是所有(IMO)之後的錯誤方法,因此重寫Model.url也無濟於事。 –