Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular$http服务为大型JSON响应返回空字符串_Javascript_Angularjs_Json_Asp.net Web Api_Large Data - Fatal编程技术网

Javascript Angular$http服务为大型JSON响应返回空字符串

Javascript Angular$http服务为大型JSON响应返回空字符串,javascript,angularjs,json,asp.net-web-api,large-data,Javascript,Angularjs,Json,Asp.net Web Api,Large Data,数据密集型intranet应用程序使用以下angularjspost功能。它调用一个Web API服务,在一个分块流中返回一个大的JSON对象。这对于100Mb的响应非常有效,但当响应达到大约250MB时失败 $scope.refresh = function (){ usSpinnerService.spin("main-grid"); $http.post('/api/Assets/GetLargeJSONResult', $scope.postPayload

数据密集型intranet应用程序使用以下
angularjs
post功能。它调用一个Web API服务,在一个分块流中返回一个大的JSON对象。这对于100Mb的响应非常有效,但当响应达到大约250MB时失败

$scope.refresh = function (){
        usSpinnerService.spin("main-grid");
        $http.post('/api/Assets/GetLargeJSONResult', $scope.postPayload
            ).then(
                function successCallback(response) {
                    $scope.mainGridOptions.api.setRowData(response.data);
                    $scope.mainGridOptions.api.refreshView();
                    clearErrorMessage();
            },
            httpErrorCallback)
            .then(refreshGridTwo)
            .finally(function () {
                usSpinnerService.stop("main-grid");
            });
};
$scope.mainGridOptions.api.setRowData(response.data)行上放置断点显示
响应。数据
为空字符串

其他一切都很好。我尝试了各种不同的方法从web服务器返回JSON响应,因此我怀疑问题出在服务器端。我的目标是Windows中的Chrome浏览器

相关请求标题:

  • 接受:application/json、text/plain、/
  • 接受编码:gzip,deflate,br
  • 接受语言:en-US,en;q=0.8
  • 连接:保持活力
相关响应标题

  • HTTP/1.1200ok
  • 缓存控制:没有缓存
  • 传输编码:分块
  • 内容类型:application/json
  • 过期:-1

我知道一个选择是将响应页面分成更小的块。然而,我更愿意在网格中分析数据时保持数据的完整性。我想知道我是否遗漏了什么,因为我可以成功地将非常大的开放式office xml文件(媒体类型“应用程序/八位字节流”)从Web API流式传输到浏览器,而不会出现任何问题

类似的问题:,您是否在web api中实际返回值的位置设置了断点,以确保其序列化正确?我碰到了一个点,它返回了一个序列化错误。Dylan,没有序列化错误。对于相同类型但大约100Mb的对象,它会正确返回。这是因为尺寸的关系。Mike发布的类似问题(谢谢!)都指向一次消耗一块数据流,但似乎没有一种简单的“角度”方法,可能是web服务器设置的限制。您是否尝试过使用外部工具(如
curl
wget
等)访问数据?请检查web.config中为
maxAllowedContentLength
设置的值。您也可以检查此链接: