【问题标题】:No response obtained while implementing CORS实施 CORS 时未获得响应
【发布时间】:2012-08-10 19:03:01
【问题描述】:

我在我的网站上使用 CORS 进行跨域对话。虽然图片中显示的响应标头对我来说似乎很好,但是我没有收到任何响应。它仍然是空白或返回响应。任何人都可以通过查看附件图像来预测我的方法中的错误吗?

在服务器端,我正在使用这个 sn-p

    header("Access-Control-Allow-Origin: *");
    header("Access-Control-Allow-Credentials: true ");
    header("Access-Control-Allow-Methods: GET, POST");
    header("Access-Control-Allow-Headers: Content-Type, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control");

在客户端,我有:-

function getXMLHTTPRequest() {
try {
req = new XMLHttpRequest();
} catch(err1) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (err2) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (err3) {
req = false;
}
}
}
return req;
}

var http899 = getXMLHTTPRequest();

http899.open("GET", modurl, true);
http899.setRequestHeader('Content-Type', 'text/html');
http899.onreadystatechange = useHttpResponse899;
http899.send(null);

【问题讨论】:

标签: http http-headers xmlhttprequest cross-domain cors


【解决方案1】:

不一定是完整的答案,但我认为某些浏览器不接受“Access-Control-Allow-Origin”标头中的多个条目。我不知道火狐是不是其中之一。

如果请求的“Origin”标头在您要接受的来源列表中,是否可以尝试将请求的“Origin”标头复制到响应的“Access-Control-Allow-Origin”中?

【讨论】:

  • 是的,我删除了那个重复的条目,仍然面临同样的问题!
【解决方案2】:

我的服务器有问题。当我在不同的服务器上尝试相同的代码时,它起作用了!我使用的是共享主机,但服务提供商已将其禁用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-06
    • 2018-10-18
    • 1970-01-01
    • 2021-01-22
    • 2013-05-01
    • 2018-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多