【问题标题】:Add auth token in request header in ember-file-upload在 ember-file-upload 的请求标头中添加身份验证令牌
【发布时间】:2018-11-29 13:40:00
【问题描述】:

我正在为我的应用程序使用 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。 任何修复或解决方法将不胜感激。

【问题讨论】:

    标签: ember.js file-upload node-modules request-headers auth-token


    【解决方案1】:

    您可以将选项作为upload 方法的第二个参数传递。一种可能的选择是headers。像这样的东西应该可以工作:

    let response = yield file.upload(url, {
      headers: {userAuthToken: localStorage.getItem("userToken")}
    });
    

    您可以找到其他可能的选项here

    【讨论】:

    • Gennady,这是非常干净和简单的方法。它工作得很好。谢谢。
    【解决方案2】:

    您可以在应用程序适配器中添加额外的标头,例如:

    import ActiveModelAdapter from 'active-model-adapter';
    
    var token = $('meta[name="csrf-token"]').attr('content');
    
    export default ActiveModelAdapter.extend({
        headers: {
            "X-CSRF-Token": token
        }
    });
    

    【讨论】:

    • 他询问ember-file-upload,这是一个上传文件的插件,不使用ember数据。
    • 是的,你是对的,在我的应用程序中我使用:let headers = adapter.get("headers");,然后将其传递给 file.upload 函数
    • Karol,我感谢您的努力,但我要求上传 ember-file-upload。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    • 2014-11-25
    • 1970-01-01
    • 2016-07-05
    • 1970-01-01
    相关资源
    最近更新 更多