如果发送数据量很大,AngularJs $ http.post()不会发送数据
我想将一个任务存储到我的数据库中。如果assignedMember中的数据量超过175,则不会发送404错误但如果assignedMember中的数据量小于175,则会发送成功并存储我的数据库。对此有任何想法。我不对我有什么不妥。请帮帮我谢谢
这是我的json数据
$scope.task=
{
"title": "My Title",
"description": "My Description",
"assignedMember": [
{
"userId": "51b701dae4b0dd92df2c32d1",
"status": "ASSIGNED"
},
{
"userId": "52de0811e4b04615ce7ed6bd",
"status": "ASSIGNED"
},
{
"userId": "559f8e97e4b0a5cdcd66bb76",
"status": "ASSIGNED"
},
.
.
.
.
.
.etc upto 500 data
]
}
这是我的帖子请求api
var responsePromise = $http.post("api/tasks",$scope.task);
responsePromise.success(function(data, status, headers, config) {
alert("Data created successfully");
});
responsePromise.error(function(data, status, headers, config) {
alert("Error")
});
如果我发送此json时指定的成员大小超过175,则会出现404错误
如果我发送此json时指定的成员大小小于175,则会成功
如果我收到404错误,我的浏览器控制台就是这样的 请求标题
主持人:localhost
User-Agent:Mozilla / 5.0(X11; Linux i686; rv:45.0)Gecko / 20100101 火狐/ 45.0
接受:application / json,text / plain, /
接受语言:en-US,en; q = 0.5
Accept-Encoding:gzip,deflate
Content-Type:application / json; charset = utf-8
内容长度:24580
回复标题
连接:关闭
内容编码:gzip
内容类型:text / html
日期:2016年12月15日星期四14:21:56 GMT
服务器:nginx / 1.10.1
Transfer-Encoding:chunked
答案 0 :(得分:0)
我不知道它是否真的是同一个问题,但我们已经遇到过这样的情况。我们使用了Angular和Apache服务器。当我们发送超过128 KB的请求时,我们遇到了错误。已经发现Apache的ModSecurity模块尝试将临时文件写入/删除到没有权限的目录。仅当查询数据超过128 KB时才会出现此错误,因为在Apache中存在默认设置为128 KB的SecRequestBodyInMemoryLimit参数。因此,我们为启动apache进程的用户授予在/home/imtadmw/logsSSL/
目录中写入和删除文件的权限。我希望这可以指导你。以下是一些有用的链接:https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#SecTmpDir和https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#SecRequestBodyInMemoryLimit