2011-02-13 70 views
5

我使用JsonRestStore但想添加自定義頁眉接受它。什麼是最好的方式去做這件事? 這與dijit.layout.ContentPane允許您通過設置ioArgs來影響基礎XHR的方式類似。所以問題可能是「什麼是JsonRestStore的ioArgs?」設置HTTP Accept頭的JsonRestStore

我使用聲明的語法,但會很樂意看到這兩種方法......

(請注意:我不感興趣,通過修改基地XHR黑客我身邊這樣)

回答

1

您最好的選擇是提供JsonRestStore的定製服務。我發現這樣做的最簡單方法是從dojox.rpc.Rest構建服務。在構造函數中,您可以提供一個函數爲所有XHR請求創建請求參數。例如。

function getRequest(id, args) { 
    return { 
     url: '/service/' + id, 
     handleAs: 'json', 
     sync: false, 
     headers: { 
      Accept: 'your custom header' 
     } 
    } 
} 

var service = new dojo.rpc.Rest('/service/', true /*isJson*/, 
           undefined /*schema*/, getRequest); 
var store = new dojox.data.JsonRestStore({ service: service }); 

這完全忽略了args參數可以包括排序和範圍參數爲你服務。

這些鏈接將提供更多信息: