gpt4 book ai didi

jquery - 谁可以排除同源政策?

转载 作者:行者123 更新时间:2023-12-01 00:45:04 25 4
gpt4 key购买 nike

Code 。为什么

$.ajax({
type : "get",
url : "http://www.facebook.com",
success: function(data){
console.log(data);
}
});

作品和

$.ajax({
type : "get",
url : "http://www.google.com",
success: function(data){
console.log(data);
}
});

在浏览器控制台上抛出著名的XMLHttpRequest无法加载同源策略异常!

为什么?我想这取决于浏览器?

最佳答案

http://www.facebook.com发送 301 Moved Permanently响应,重定向到 https://www.facebook.com .

看起来重定向会导致请求失败,而不是彻底的跨域失败。但是,两个请求都失败。

编辑

根据W3C Ajax specification :

If the response has an HTTP status code of 301, 302, 303, 307, or 308 ...

  1. Set the request URL to the URL conveyed by the Location header.
  2. If the source origin and the origin of request URL are same origin transparently follow the redirect while observing the same-origin request event rules.
  3. Otherwise, follow the cross-origin request steps and terminate the steps for this algorithm.

文本“透明地遵循重定向”意味着Ajax应该将301重定向的目标视为原始目标。但是,在执行重定向时,会根据新的目标源重新检查同源策略。

目标域还必须与请求脚本具有相同的源,或者它必须使用允许请求源访问的 CORS header 进行响应。

关于jquery - 谁可以排除同源政策?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17237247/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com