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确认其他人提到的内容。