ajax中headers无法传参,IE AJAX Headers无法获取问题

本文探讨了在IE浏览器下开启SSL时,如何使使用localStorage存储的token在AJAX请求中自动添加Authorization头,以解决认证问题。提供两种方法对比及解决方案,适用于避免频繁手动设置header。

1.var token = sessionStorage.getItem("s");

var headers = {};

if (token) {

headers.Authorization = 'Bearer ' + token;

}

$.ajax({

url: '/api/values',

dataType: 'json',

headers:headers,

contentType: "application/json; charset=utf-8",//(可以)

success: function (data) {

var a = 1;

},

error: function (data) {

var a = 1;

}

});

2.

$.ajaxSetup({

beforeSend: function (xhr,a,b) {

xhr.setRequestHeader('Authorization', 'Bearer ' + localStorage.getItem('token'));

} });

$.ajax({

url: '/api/values',

dataType: 'json',

contentType: "application/json; charset=utf-8",//(可以)

success: function (data) {

var a = 1;

},

error: function (data) {

var a = 1;

}

});

1.在IE下不开启SSL,两种都没有问题

2.在IE下开启SSL,第二种拒绝访问,请求被终止,没有达到服务端认证这一步,在客户端就挂了,第一种没问题

3.任何情况下,Chrome都没有问题

请问如何让第二种情况实现,不想每次都手动写header,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值