Ruby on rails EmberJS/Ember数据自定义http头
结合rails后端使用ember 1.13.2和ember数据1.13.4 根据ember指南,以下语句应修改每个XHR请求的http头:Ruby on rails EmberJS/Ember数据自定义http头,ruby-on-rails,ember.js,ember-data,Ruby On Rails,Ember.js,Ember Data,结合rails后端使用ember 1.13.2和ember数据1.13.4 根据ember指南,以下语句应修改每个XHR请求的http头: App.ApplicationAdapter = DS.RESTAdapter.extend({ headers: { "Authorization": "secret key" } }); 所以我把这个作为咖啡脚本添加到我的应用程序中 App.ApplicationAdapter = DS.RESTAdapter.extend hea
App.ApplicationAdapter = DS.RESTAdapter.extend({
headers: {
"Authorization": "secret key"
}
});
所以我把这个作为咖啡脚本添加到我的应用程序中
App.ApplicationAdapter = DS.RESTAdapter.extend
headers: {
"Authorization": "foofoo"
}
它被包含并正确编译为javascript
但是http头根本没有使用新头进行扩展
唯一有效的解决方案是配置jquery ajax:
Ember.$.ajaxPrefilter(function(options, oriOpt, jqXHR) {
jqXHR.setRequestHeader("someHeader", "someValue");
});
但我更喜欢余烬的方式
更新:
奇怪的是,它现在只适用于余烬方式。刚刚重启了我的电脑。也许这是浏览器缓存问题。根据余烬文档,您似乎基本正确。这是一个应该有效的解决方案,由 有些API需要HTTP头,例如提供API密钥。可以在RESTAdapter的headers属性中将任意头设置为键/值对,余烬数据将随每个ajax请求一起发送
App.ApplicationAdapter = DS.RESTAdapter.extend({
headers: {
'API_KEY': 'secret key',
'ANOTHER_HEADER': 'Some header value',
'AUTHORIZATION': 'secret key'
}
});