我正在为我的应用程序使用ember vesrion 2.15.1。我正在使用ember-file-upload节点模块来支持文件上传,并且成功。挑战是我无法向请求标头添加身份验证令牌。我的请求标头如下所示:
我无法在文件上传的请求标头中添加 userAuthToken ,如下所示,我可以为其他api调用添加该信息:
我尝试通过
上传文件set(file, 'headers.userAuthToken', localStorage.getItem("userToken")); // this line is creating problems
let response = yield file.upload(url);
但无法在请求标头中添加 userAuthToken 。 任何修复或解决方法将不胜感激。
答案 0 :(得分:2)
您可以将选项作为upload
方法的第二个参数传递。可能的选项之一是headers
。这样的事情应该起作用:
let response = yield file.upload(url, {
headers: {userAuthToken: localStorage.getItem("userToken")}
});
您可以找到其他可能的选项here
答案 1 :(得分:0)
您可以在应用程序适配器中添加其他标头,例如:
import ActiveModelAdapter from 'active-model-adapter';
var token = $('meta[name="csrf-token"]').attr('content');
export default ActiveModelAdapter.extend({
headers: {
"X-CSRF-Token": token
}
});