0

ApplicationAdapter这样设置:

App.ApplicationAdapter = DS.RESTAdapter.extend({
    headers: {
        'X-Api-Key': 'ABCDEF'
    }
});

现在我需要能够读取headersEmber 实例的当前属性App.ApplicationAdapter,所以我可以添加:

var headers = {}; /* HOW DO I GET THE CURRENT HEADERS? */
headers['X-My-New-Header'] = 'someValue';
App.ApplicationAdapter.reopen({ headers: headers; });

我怎样才能读到电流headers

4

1 回答 1

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
于 2013-11-07T13:45:07.963 回答