我正在使用backbone.js與REST API進行交互,當發佈到它以創建新資源時,將響應狀態爲201,一個'Location'頭指向資源的URI,但是一個空的主體。在Backbone.js中處理REST API的'創建'響應的最佳方式
當我創建一個新模型的時候,它的成功,但是模型的本地表示只包含我明確設置的屬性,而不是任何將在服務器上設置的屬性(created_date等)
從我所瞭解的情況來看,Backbone會更新它在模型中的數據表示,如果有的話。但是,由於沒有,它沒有。
因此,顯然,我需要使用位置標題中的位置來更新模型,但是最好的方法是什麼。
我目前的想法是,我將不得不從頭中解析url,拆分id,設置模型的id,然後告訴模型去fetch()。
這似乎很混亂。有沒有更乾淨的方法來做到這一點?
我對API有一些影響。嘗試讓API作者返回新模型作爲響應的主體(同時保留201和位置標題)是最佳解決方案嗎?
謝謝!
這可能有一些幫助:https://github.com/PaulUithol/backbone-tastypie/blob/master/backbone_tastypie/static/js/backbone-tastypie.js#L15 – dlamotte 2012-01-04 20:22:19