我有大量数据(列表)作为http响应从play-java发送到前端。我正在以片段的形式发送响应,如下面的代码片段所示。
Chunks<String> chunks = StringChunks.whenReady(out -> callOutChannelAndWriteInChuncks(out,response)); return ok(chunks);
如何使用angularjs $ http服务访问作为块发送的完整响应。
angular.module('myApp').factory('ApiFactory', ['$http', function
($http) {
function patchDeferred(defer) {
defer.always = function (callback) {
defer.then(callback, callback);
};
return defer;
}
return {
callApi: function (dataa) {
var defer = $http({ method: 'POST', data: dataa, headers: { "Content-Type": undefined }, transformRequest:
angular.identity, url: Some_URL });
return patchDeferred(defer);
}
};
}]);
当我尝试使用$ http帖子调用api时,该api返回成功,但可能会看到以下控制台错误。
SyntaxError:意外的令牌[在JSON中的位置16137351 在JSON.parse() 在fromJson(angular.js:1078) 在defaults.defaults.transformResponse(angular.js:7105) 在angular.js:7080 在Array.forEach() 在forEach(angular.js:323) 在transformData(angular.js:7079) 在transformResponse(angular.js:7750) 在wrappedCallback(angular.js:11100) 在angular.js:11186
以示例为例的Soln将非常有帮助和赞赏。预先感谢。