我正在研究angularjs服务。我从API端点获得了一些回调响应。我正在使用角度jsonP来获取回调响应我使用 jsonpCallbackParam:'jsonpCallback'来解析我的回调响应。但是没有触发此 jsonpCallback 功能。我已在下面附上我的回复。
projectInstance.jsonpCallback("getActiveProduct",{"totalRecords":null,"projectSnapShot":[{"projectId":"333333","projectNumber":"123456","projectStatus":"Active"}]})
这是我的服务代码:
getActiveProduct: function() {
var deferred = $q.defer();
var url = "myserver/getproject.json"
projectInstance={};
$http.jsonp(url, {
jsonpCallbackParam: 'jsonpCallback',
data: ''
}).then(function(data) {
deferred.resolve(data.data);
}, function(error) {
console.log(error);
return deferred.reject(err);
});
return deferred.promise;}
这是我的jsonpCallback函数
jsonpCallback: function(commandName, responseData) {
if (commandName == "getActiveProduct") {
var jsonObject = responseData;
var projectArray = [];
angular.forEach(jsonObject.projectSnapShot, function(index, item) {
projectArray.push(item);
console.log(projectArray);
});
}
这里我附上了我的服务终点。它会自动附加 angular.callbacks._0
myserver/getproject.json?callback=angular.callbacks._0
我在
下面附加了我的控制台错误Uncaught TypeError: Cannot read property 'jsonpCallback' of null
它抛出错误响应,如
{data: false, status: 404, headers: ƒ, config: {…}, statusText: "error", …}
我在网络标签中得到了回应。但是由于这个JsonpCallback在前端解析它会抛出控制台错误。如何修复这个问题?