Ajax 为什么不是';JSONP回调函数是否被调用?

Ajax 为什么不是';JSONP回调函数是否被调用?,ajax,jquery,cross-domain,jsonp,Ajax,Jquery,Cross Domain,Jsonp,我正在尝试使用jsonp访问以下位置的数据: 但是,我尝试过的任何解决方案都不会导致调用回调函数或success函数。当我使用Chrome/Firefox检查工具时,我可以查看脚本,看到响应是200 Ok,并且响应文本包含来自上述URL的数据。尽管如此,回调函数和success函数在任何时候都不会被调用。你有什么办法让它工作吗 以下是我最近一次尝试运行此功能的尝试: <script src="http://code.jquery.com/jquery-1.9.1.min.js">&

我正在尝试使用jsonp访问以下位置的数据:

但是,我尝试过的任何解决方案都不会导致调用回调函数或success函数。当我使用Chrome/Firefox检查工具时,我可以查看脚本,看到响应是200 Ok,并且响应文本包含来自上述URL的数据。尽管如此,回调函数和success函数在任何时候都不会被调用。你有什么办法让它工作吗

以下是我最近一次尝试运行此功能的尝试:

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script type="text/javascript">
        function parseResults(results) {
            console.log('hello function callback.');
        }

        $.ajax({
            url: 'https://github.com/users/jbranchaud/contributions_calendar_data',
            type: 'post',
            dataType: 'jsonp',
            jsonp: true,
            jsonpCallback: 'parseResults',
            success: function(data, textStatus, jqXHR) {
                console.log('success_function');
                console.log(data);
            },
            error: function() {
                console.log('error with jsonp request');
            }
        });
    </script>

函数解析结果(results){
log('hello函数回调');
}
$.ajax({
网址:'https://github.com/users/jbranchaud/contributions_calendar_data',
键入:“post”,
数据类型:“jsonp”,
jsonp:没错,
jsonpCallback:'parseResults',
成功:函数(数据、文本状态、jqXHR){
console.log('success_function');
控制台日志(数据);
},
错误:函数(){
log('jsonp请求出错');
}
});

加载页面时,我在控制台中看到“jsonp请求出错”,因此ajax请求出错。这个请求没有成功的原因是什么?

在ajax请求中,尝试将属性“jsonp”设置为false(jsonp:false

基本上,JQuery生成一个自动的函数回调名称,如下所示:JQuery1223…34

在本例中,您已经显式设置了jsonpCallback函数名。因此,您必须将JSONPAttribute设置为false。 您的代码应该如下所示:

$.ajax({
        url: 'https://github.com/users/jbranchaud/contributions_calendar_data',
        type: 'post',
        dataType: 'jsonp',
        jsonp: false,
        jsonpCallback: 'parseResults',
        success: function(data, textStatus, jqXHR) {
            console.log('success_function');
            console.log(data);
        },
        error: function() {
            console.log('error with jsonp request');
        }
    });

控制台中是否有错误,能否添加一个错误回调并检查它是否被调用parseResults是否被调用控制台中没有错误,但当我向ajax请求添加一个错误回调时,它打印了我的错误消息(请参阅更新的代码)您的响应似乎不是jsonp响应jsonp响应的格式应该是
()
。ex
parseResults([[“2012/03/01”,0],“2012/03/02”,1],“2012/03/03”,1]])