我的api端点需要/
,但Ember不会添加/
。有没有办法编辑RESTAdapter创建的URL,以便添加此斜杠?
目前,网址余下发送的内容为http://www.myapi.com/v1/roles
我需要网址如下所示:http://www.myapi.com/v1/roles/
这是我目前的ApplicationAdapter:
import DS from 'ember-data';
export default DS.RESTAdapter.extend({
ajaxError: function() {
console.log('error');
},
host: 'http://www.myapi.com',
namespace: 'v1'
});
这是我的路由器:
import Ember from 'ember';
export default Ember.Route.extend({
model: function(params) {
return this.store.find('role');
}
});
答案 0 :(得分:5)
您需要覆盖ApplicationAdapter上的buildURL
函数以附加尾部斜杠。您只需调用DS.RESTAdapter提供的默认buildURL
,然后附加斜杠。
这是代码的样子:
import DS from 'ember-data';
export default DS.RESTAdapter.extend({
ajaxError: function() {
console.log('error');
},
host: 'http://www.myapi.com',
namespace: 'v1',
buildURL: function(type, id, record) {
//call the default buildURL and then append a slash
return this._super(type, id, record) + '/';
}
});