我有一个通过POST请求接收JSON的端点。
RequestMapping(value = "/app/login", method = RequestMethod.POST,
headers = { "Content-type=application/json" })
@ResponseBody
public LoginResponse logIn(@RequestBody LoginRequest jsonRequest) {
// code
}
LoginRequest:
public class LoginRequest {
private String user;
private String password;
private String idPush;
private Integer idDevice;
// getters and setters
}
无论如何我可以指定idDevice作为可选项吗?
如果我没有在json中发送idDevice,Spring会返回400错误。
答案 0 :(得分:11)
似乎将RequestBody设置为optional,使得任何属性都是可选的,而不仅仅是完整的bean。
public LoginResponse logIn(@RequestBody(required=false) LoginRequest jsonRequest) {