JSON jQuery问题:未捕获的语法错误:意外标记:

JSON jQuery问题:未捕获的语法错误:意外标记:,jquery,json,Jquery,Json,我正在编写一个jQuery调用,以从memegenerator.netAPI检索JSON数据。然而,使用下面的代码,每当我在Chrome中测试它时,我都会得到一个未捕获的SyntaxError:Unexpected token:error。我试图删除回调=?这又犯了一个错误 每当我直接访问URL时,它都会很好地返回 JSFIDLE中的JSLint声明返回的JSON有效 关于如何让这个电话成功有什么想法吗 <script> $(document).ready(function() {

我正在编写一个jQuery调用,以从memegenerator.netAPI检索JSON数据。然而,使用下面的代码,每当我在Chrome中测试它时,我都会得到一个未捕获的SyntaxError:Unexpected token:error。我试图删除回调=?这又犯了一个错误

每当我直接访问URL时,它都会很好地返回

JSFIDLE中的JSLint声明返回的JSON有效

关于如何让这个电话成功有什么想法吗

<script>
$(document).ready(function() {
    $.ajax({
        type: 'GET',
        url: 'http://version1.api.memegenerator.net/Instances_Select_ByNew?languageCode=en&pageIndex=0&pageSize=12&urlName=Insanity-Wolf?callback=?',
        dataType: 'json',
        success: function() {
            console.log('Success!');
        },
        error: function() {
            console.log('Uh Oh!');
        }
    });
});​      
</script>

$(文档).ready(函数(){
$.ajax({
键入:“GET”,
网址:'http://version1.api.memegenerator.net/Instances_Select_ByNew?languageCode=en&pageIndex=0&pageSize=12&urlName=Insanity-沃尔夫?回调=?',
数据类型:“json”,
成功:函数(){
console.log('Success!');
},
错误:函数(){
console.log('Uh-Oh!');
}
});
});​      

听起来像是跨域错误。如果不在服务器上使用
jsonp
或代理脚本,就无法使用ajax从其他域请求内容。(如果使用php,它将是一个

在页面上查找jsonp

卷曲请求:

$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, 'http://version1.api.memegenerator.net/Instances_Select_ByNew?languageCode=en&pageIndex=0&pageSize=12&urlName=Insanity-Wolf');
curl_setopt($cURL, CURLOPT_HEADER, 0 );
curl_setopt($cURL, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt($cURL, CURLOPT_SSL_VERIFYHOST, false );
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($cURL);
curl_close($cURL);
echo $output;

由于浏览器的安全限制,大多数“Ajax”请求都受同源策略的约束;请求无法从其他域、子域或协议成功检索数据。您需要jsonp。

该api要么不支持jsonp,要么正在寻找与
回调
不同的回调参数

此外,您的url应该是

http://version1.api.memegenerator.net/Instances_Select_ByNew?languageCode=en&pageIndex=0&pageSize=12&urlName=Insanity-Wolf&callback=?
注意
而不是


另外,数据类型应该是
“jsonp”

,memegenerator似乎不提供jsonp或CORS头(这将允许跨域ajax正常工作)。因此,您需要在服务器上调用一个脚本,向该url发出cURL请求,然后返回该url。我不是op,我只是想指出,使用ajax不能从其他域请求内容是错误的:Pumm,你停止阅读我的答案了吗?这就是我所拥有的?哈哈,我给了你很多关注……不,我是说,你错了。您可以使用ajax从其他域请求内容,而无需使用代理或jsonp。