发送'授权' Ext JS Ajax Request,Chrome vs. Firefox中的标题

时间:2015-07-20 08:57:39

标签: javascript ajax security extjs

在代码中,请求以:

发送
var ajaxOptions = {
    url: 'someUrl',
    method: 'POST',
    success: function(response) {
        ...
    },
    failure: function(response) {
        console.log(response);
    }
};

    var form = this.getView().getForm();
    var submitAction = Ext.create('Ext.form.action.Submit', { form: form });
    var formInfo = submitAction.buildForm();
    ajaxOptions.form = formInfo.formEl;
    if (form.hasUpload()) {
        ajaxOptions.isUpload = true;
    }
    Ext.Ajax.request(ajaxOptions);

当通过Chrome发送请求时,“授权”'标题呈现:

Authorization:Basic YWRtaW46YWRtaW4=

通过Firefox发送时,不包含标题。 显然,我没有设置用户/密码。所以它不清楚,为什么以及Chrome如何发送这样的标题。有任何已知问题吗? 第二,如何强制firefox发送这样的头文件?可能吗?

已更新 JavaScript现在没有关于登录/密码的任何信息。主要问题是Chrome如何使用它们,但其他浏览器无法发送此类对。所以问题是如何强制其他浏览器发送此Cookie,因为Chrome没有通过JavaScript手动应用标题。

在服务器端,使用Servlet API。在web.xml中:

<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>someName</realm-name>
</login-config>

如果确实重要

1 个答案:

答案 0 :(得分:1)

根据docs,只需向headers添加ajaxOptions媒体资源:

ajaxOptions = {
    //...
    headers : {
        'Authorization': 'Basic YWRtaW46YWRtaW4='
    }
}