您的位置:首页 > 产品设计 > UI/UE

Request header field sessionId is not allowed by Access-Control-Allow-Headers in preflight response.

2018-03-05 14:23 579 查看

上传图片 跨域请求 出现异常

跨域请求出现异常:Request header field sessionId is not allowed by Access-Control-Allow-Headers in preflight response.
原因:调用的接口,请求头中不允许sessionId解决方法:在ajax方法调用之前先把设置的sessionId删除,待处理完成之后,也要记得把sessionId设置回去。删除:
delete jQuery.ajaxSettings.headers['sessionId']


设置回去:
jQuery.ajaxSettings.headers['sessionId'] = Cookies.get("sessionId");


具体案例:
//上传图片功能
function uploadImg(file) {
var fd = new FormData();
fd.append('uploadFile', file);

//删除请求头中的sessionid
delete jQuery.ajaxSettings.headers['sessionId']

$.ajax({
url:uploadUrl,
type: "post",
// Form数据
dataType:'json',
data: fd,
cache: false,
contentType: false,
processData: false,
beforeSend:function(xhr){
//删除请求头中的sessionid  这里不一定可以,在本项目中,就不行
//  delete jQuery.ajaxSettings.headers['sessionId']
},
success: function (data) {
//                jQuery.ajaxSettings.headers['sessionId'] = Cookies.get("sessionId");
linkImage = data.visitPath;

//上传成功,展示在页面上  展示 linlUrl
$("#linkImage").attr("src",linkImage);
}

});

//将数据设置回去

a27b
jQuery.ajaxSettings.headers['sessionId'] = Cookies.get("sessionId");

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐