400在zure上将json数组发布到spring控制器时出现错误请求

时间:2018-06-18 13:28:28

标签: azure spring-mvc

当我尝试将zson数组传递给azure app服务上的spring控制器时,我收到400个错误请求。但是,当我尝试从本地环境运行服务时,我没有收到任何错误。我的要求如下,

$http.post(appPath + '/app/temp/saveTempData?tempData=' + JSON.stringify(row.data)).success(function(result) {

            if (result.result) {

                toaster.pop("successful", "Updated successfully");
            } else {
                toaster.pop("warning", "Something went wrong please try again later.");
            }
        })

其中row.data是一个json数组。在弹簧控制器上我有以下内容,

@RequestMapping(value = "/saveTempData", method = RequestMethod.POST)
@ResponseBody
public String saveTempData(@RequestParam JSONArray tempData) {



}

此代码在我的本地计算机上运行,​​但在azure app服务上,它给了我400个错误请求。谢谢。

1 个答案:

答案 0 :(得分:0)

当使用json组件将json数组发送到应用程序服务控制器时,我们必须对请求参数进行编码,如下所示,

$http.post(appPath + '/app/temp/saveTempData?tempData=' + encodeURIComponent(JSON.stringify(row.data))).success(function(result) {

            if (result.result) {

                toaster.pop("successful", "Updated successfully");
            } else {
                toaster.pop("warning", "Something went wrong please try again later.");
            }
        })