Javascript 为什么ajax请求与www一起工作?
我有以下代码:Javascript 为什么ajax请求与www一起工作?,javascript,jquery,html,Javascript,Jquery,Html,我有以下代码: $.ajax({ url: frametarget, dataType: 'html', method: 'GET', success: function(data){ // $("#result").html(data[0].title); console.log(data); }, error: function(error){
$.ajax({
url: frametarget,
dataType: 'html',
method: 'GET',
success: function(data){
// $("#result").html(data[0].title);
console.log(data);
},
error: function(error){
console.log(error);
}
});
现在,如果frametarget=www.skyports.com,则呼叫成功,但使用skyports.com时呼叫失败
我正在对这两个URL进行跨域调用,因此我预计这两个URL都会失败。http://www.skysports.com 此响应标头允许跨域请求:访问控制允许来源:*
为了http://skysports.com 响应中没有CORS标头,因此浏览器拒绝该请求
有关更多信息,请参阅。首先,您需要知道它失败的原因。查看您的开发工具以获取线索。任何跨域调用都首先发送选项请求,以检查服务器是否接受此类请求。似乎www.skyports.com已设置为接受,但skyports.com未设置为接受。可能有一个从skysports.com到www.skyports.com的永久重定向导致选项失败。哦,不,只有某些跨域请求发送选项请求。假设www和非www都是跨域的,更改url不会影响它是否发送选项预飞行。我的假设是失败的,因为它试图重定向,重定向响应没有返回正确的CORS标头。不,这些是外部网站,我无法访问它们@Kevin B-我在开发工具中没有收到任何错误,调用了错误处理程序,但现在给出了错误的描述。换句话说,这是一个特定第三方站点的配置问题,对吗?对。skysports.com请求返回一个301重定向到www.skyports.com,没有CORS头。感谢Josa确认其他人提到的内容。