0

我正在尝试使用 jQuery http://www.decolar.com/shop/flights/data/search/roundtrip/sao/orl/2013-09-11/2013-通过 ajax 访问这个 URL(在我的域之外) 09-19/1/0/0/FARE/ASCENDING/NA/NA/NA/NA/NA

我试图用 YQL 使这成为可能。

这是我的代码:

        var url = 'http://www.decolar.com/shop/flights/data/search/roundtrip/sao/orl/2013-09-11/2013-09-19/1/0/0/FARE/ASCENDING/NA/NA/NA/NA/NA'; 

        var consultar = "http://query.yahooapis.com/v1/public/yql?"+
                    "q=select%20*%20from%20html%20where%20url%3D%22"+
                    encodeURIComponent(url)+
                    "%22&format=xml&callback=?";

        $.getJSON( consultar ,
            function(data){
                console.log(data);                    
                console.log(consultar);
                $('#content').html(data.results[0]);
            }
        );  

我可以用我的浏览器访问这个 URL,但是使用 YQL,我没有返回数据:(

帮我!:(

4

1 回答 1

1

问题是 XMLHttpRequest 是 $.getJSON 背后的魔力,它不支持跨域请求,而无需在某些浏览器支持而其他浏览器不支持的标头中进行特殊握手。jQuery 确实支持发出跨域请求,但您必须使用脚本标记注入和称为JSONP的东西来实现。

有关详细信息,请参阅此线程:jQuery AJAX 跨域

于 2013-08-01T23:25:19.940 回答