chrome/ffirefox上的CORS错误,但与Internet explorer配合使用效果良好



我正试图从本地HTML页面对alteryx服务器进行ajax调用。我提出的请求运行良好,我在Internet Explorer上得到了响应,但没有在Google Chrome/Firefox上加载。获取"Access Control Allow Origin"错误为:

请求的资源上不存在"Access Control Allow Origin"标头。因此,不允许访问源"null"。响应的HTTP状态代码为401。

我尝试将"Access Control Allow Origin"添加到ajax请求标头中,如下所示,但这也不能解决我的问题:

$.ajax({
type: 'GET',
url: 'xxxxxxx',
header: {'Access-Control-Allow-Origin': '*'},
data: params,
success: success,
error: error
});

我已经在浏览器控制台中跟踪了请求/响应标头,可以在Access Control Headers标记下看到自定义标头。我收到的数据是json格式的。此外,我无法从服务器响应端进行任何更改,因为我无法访问它

我不明白为什么IE能够加载页面,而其他浏览器却不能,以及是否有其他可能的解决方法使其在其他浏览器上也能工作。

谢谢,Aakash

什么版本的IE?

此SO页面可提供以下见解:Internet Explorer与Chrome和Firefox 的跨域HTTP

您可以尝试将$.ajax的dataType属性设置为GET请求的'jsonp',以解决此问题,因为您没有访问服务器的权限。

最新更新