2011-02-13 93 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参数可以包括排序和范围参数为你服务。

这些链接将提供更多信息: