我将ApplicationAdapter
设置为:
App.ApplicationAdapter = DS.RESTAdapter.extend({
headers: {
'X-Api-Key': 'ABCDEF'
}
});
现在我需要能够读取Ember headers
实例的当前App.ApplicationAdapter
属性,所以我可以添加它:
var headers = {}; /* HOW DO I GET THE CURRENT HEADERS? */
headers['X-My-New-Header'] = 'someValue';
App.ApplicationAdapter.reopen({ headers: headers; });
如何阅读当前的headers
?
答案 0 :(得分:2)
我认为您可以通过对象引用进行更改:
App.httpHeaders = {
'X-Api-Key': 'ABCDEF'
}
App.ApplicationAdapter = DS.RESTAdapter.extend({
headers: App.httpHeaders
});
// in some action etc
App.httpHeaders['X-Api-Key'] // "ABCDEF"
App.httpHeaders['foo'] = "Bar"
// etc
或丑陋的方式:通过容器获取适配器实例。
var headers = App.__container__.lookup('adapter:application').headers
headers['X-Api-Key'] // "ABCDEF"
headers['foo'] = "Bar"
// etc