Angular 1.5 JSONP代码调用没有达到成功方法



我的JSONP代码由于某种原因而无法使用Angular工作!我已经阅读了数千个示例,但根本不起作用。请参阅下面的代码。

我已经阅读了这个问题,它还没有解决我的问题angularjs jsonp不起作用

我的示例代码显示了已定义的成功和错误方法的http.jsonp调用。我正在使用Chrome进行开发和测试,第二和第三张图像显示了Ajax服务调用和服务的JSONP响应。

最新更新

从@thesharpieone接收帮助后,服务器响应现在返回一个实际功能(而不是以前是问题的字符串),但是由于某种原因,成功方法未执行吗?

    $http.jsonp(url).then(function(response) {
        alert('success');  // not hit
    }, function onError(response) {
        alert('error');  // this is displayed
    });

非常感谢,

Angular JS

var url = serviceRoot + "api/customer/get?callback=JSON_CALLBACK";
$http.jsonp(url).success(function (data) {
    alert('success');  // never called
})
.error(function () {
    alert('error');    
});

Chrome网络面板

显示Chrome网络面板,突出显示AJAX调用

AJAX响应

显示AJAX响应(日期数组)

您的JSONP响应是引用的,不应该是。应该执行脚本,该脚本将调用您的回调函数。现在,它只是一个字符串,而不是带有参数的JavaScript函数调用。

JSONP通过在链接到您的URL的页面上删除新的<script>标签来工作。执行时,应该调用您的回调。因此,JSONP的响应应为JavaScript,而不是字符串。

最新更新