我有一个像这样的dstore / Rest实例:
'/rest/entries/100500?token=some_token'
我需要为每个PUT / POST请求添加一个令牌作为查询参数,因此我的PUT / POST请求的url应如下所示:
entries.add({id: 100500, value: 'someValue'})
在dstore / Rest中是否有任何方便的方法来执行此操作?或者可以在每个请求之前设置标头并在其中放置令牌。无论如何,我的问题是在我打电话时建立正确的请求
entries.add(entry, {
headers: {
Token: token
}
})
更新
我发现,Rest.add接受两个参数 - 对象和选项,并设法在标题中添加标记:
data.table
但我仍然对查询参数感到好奇。
答案 0 :(得分:1)
我认为通过创建自定义this.state
类来继承dstore / Rest,构造函数中的添加标题将帮助您在constrictor中传递令牌,然后每次都不使用标题执行操作。
你的新课应该是这样的:
MyRest.js
答案 1 :(得分:1)
我设法为我找到了以下解决方案:
lang.extend(Rest, {
setToken: function(token) {
this.token = token
aspect.after(this, '_getTarget', function(target) {
if (this.token) {
target += '?token=' + this.token
this.token = undefined
}
return target
})
aspect.before(this, 'add', function() {
if (this.token) {
this.target += '?token=' + this.token
this.token = undefined
}
})
return this
}
})
我这样使用它:
entries.setToken(token).add(data)
但我不确定这是完成任务的好方法。