我创建了一个AJAX XD请求,调用很好,在Chrome中一切正常,作为回应,我可以获得HTTP标头,但在Firefox中,我不能。我已经声明了所有原始标题,等等。
有人可以帮忙吗?
$.ajax({
url: 'myurl',
type: "POST",
cache: false,
dataType: "text",
crossDomain: true,
async: true,
xhrFields: {
withCredentials: false
}
})
.done(function( value, type, obj ) {
console.log('success', arguments, obj.getAllResponseHeaders());
});
On server it's defined the headers:
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Origin: _URL_');
header('Access-Control-Expose-Headers: some_id,Content-Range');
答案 0 :(得分:0)
这可能是由于Firefox中的错误造成的。 jQuery文档中有一个问题描述和解决方法建议:
http://api.jquery.com/jQuery.ajax/
目前,由于Firefox中的一个错误,.getAllResponseHeaders()返回空字符串,尽管.getResponseHeader('Content-Type')返回非空字符串,不支持在Firefox中使用jQuery自动解码JSON CORS响应