解析angular.js中的JSONP $ http.jsonp()响应

解析angular.js中的JSONP $ http.jsonp()响应

我正在使用angular的$http.jsonp()请求,该请求成功返回包含在函数中的json:

var url = "http://public-api.wordpress.com/rest/v1/sites/wtmpeachtest.wordpress.com/posts?callback=jsonp_callback";$http.jsonp(url).
    success(function(data, status, headers, config) {
        //what do I do here?
    }).
    error(function(data, status, headers, config) {
        $scope.error = true;
    });

如何访问/解析返回的函数包装JSON?


温温酱
浏览 1054回答 3
3回答

慕莱坞森

在最重要的事情我并没有很长一段时间明白的是,要求必须含有“回调= JSON_CALLBACK”,因为AngularJS 修改请求的URL,代替“JSON_CALLBACK”的唯一标识符。服务器响应必须使用'callback'参数的值,而不是硬编码“JSON_CALLBACK”:JSON_CALLBACK(json_response);  // wrong!由于我正在编写自己的PHP服务器脚本,我以为我知道它想要的函数名称,并且不需要在请求中传递“callback = JSON_CALLBACK”。大错!AngularJS用唯一的函数名替换请求中的“JSON_CALLBACK”(如“callback = angular.callbacks._0”),服务器响应必须返回该值:angular.callbacks._0(json_response);
打开App,查看更多内容
随时随地看视频慕课网APP