这是我的 angularjs 代码
$scope.createOrderObject.orderItemObjs=JSON.stringify($scope.createOrderObject.orderItemObjs);
$scope.createOrderObject
是一个数组,这个数组包含3个以上的数组。 当我添加最多 5 个产品时,效果非常好,但是当我尝试添加第 6 个产品时,它显示 400 错误。
$http({
method: "POST",
url: baseUrl + "/Order/saveOrUpdateOrders",
params: $scope.createOrderObject,
headers: {
'Content-Type': 'application/json',
}
在浏览器将此请求告知为格式错误的网址后,发布网址变得非常大,大约 5000 个字符。
我在 servlet 中收到这个请求,如下所示
@RequestMapping(value = "/Order/saveOrUpdateOrders", method =RequestMethod.POST)
public void saveOrUpdateOrders(OrdersFormObj orderFormObj, HttpServletResponse response, HttpServletRequest request) throws IOException {
try {
String addCity = request.getParameter("addCity");
String addDist = request.getParameter("addDist");
String orderItemObjs = request.getParameter("orderItemObjs");
这是一个
String orderItemObjs = request.getParameter("orderItemObjs");
Stringfy数组
我真的不知道问题出在哪里。我怀疑网址长度,但我不知道如何解决这个问题。请帮助摆脱这个
最佳答案
尝试以这种方式进行ajax调用:
var req = {
method: 'POST',
url: baseUrl + "/Order/saveOrUpdateOrders",
headers: {
'Content-Type': "application/json"
},
data: $scope.createOrderObject
}
$http(req).success(function(){...}).error(function(){...});
“params”用于 GET 调用,使用“data”进行 post 调用
关于java - 当请求数量很大时,HTTP post方法显示400错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46197412/