在Spring中发送json时400(错误请求)

时间:2017-01-30 12:58:08

标签: spring servlets http-status-code-400

我正在尝试将json字符串发送到Spring控制器,我得到400 - 作为响应的错误请求

我正在使用Spring 4.0.3

这是我的控制器

@Controller
public class Customer{

    @RequestMapping(value = "/apis/test", method = RequestMethod.GET, produces = "application/json")
    public @ResponseBody String test(HttpServletRequest params) throws JsonIOException {
        String json = params.getParameter("json");
        JsonParser jObj = new JsonParser();
        JsonArray  jsonObj = (JsonArray ) jObj.parse(json);

        for(int i = 0; i < jsonObj.size(); i++) {
            JsonObject jsonObject = jsonObj.get(i).getAsJsonObject();
            System.out.println(jsonObject.get("name").getAsString());

        }
        return json;
    }
}

请帮我解决这个问题

1 个答案:

答案 0 :(得分:1)

Abkuehlrate_T800_600

以上意味着这是一个HTTP GET方法,它通常不接受数据。您应该使用HTTP POST方法,例如:

@RequestMapping(value = "/apis/test", method = RequestMethod.GET, produces = "application/json")

然后你可以执行POST / apis / test?param1 = one&amp; param2 = 2并在请求的RequestBody中添加字符串

我希望这有帮助!