我有一个使用API的ember应用程序。我的API需要在URL中发送API密钥,如...
myJunk.com/api/v1/shots?api_key=d26da3938adc5f3c8604256194c18501
这是我正在努力工作的余烬代码......
App.Person = Ember.Model.extend({
name: Ember.attr()
});
App.Person.adapter = Ember.RESTAdapter.create();
App.Person.url = "http://myJunk.com/api/v1/shots?api_key=d26da3938adc5f3c8604256194c18501";
App.Person.collectionKey = "shots";
我遇到的问题是'.json'被附加到URL。这是我在chrome中得到的错误......
XMLHttpRequest cannot load http://myJunk.com/api/v1/shots?api_key=d26da3938adc5f3c8604256194c18501.json.
看起来这是一个知道issue ...
在ember中执行此操作的正确方法是什么?
答案 0 :(得分:0)
看起来该修补程序尚未进入发布版本。见github评论......
答案 1 :(得分:0)
我在ApplicationAdapter
中执行此操作,如下所示:
ajaxOptions: function(url, type, hash) {
if(window.ENV.api_key) {
if(hash === undefined) {
hash = {data: {api_key: window.ENV.api_key}};
} else {
if(hash.data) {
hash.data.api_key = window.ENV.api_key;
} else {
hash.data = {api_key: window.ENV.api_key};
}
}
} else {
Ember.Logger.debug('no api key');
}
return this._super(url, type, hash);
}
将当前用户的API密钥存储在ENV.api_key
中。这样就可以插入所有请求,POST或GET。