Spring, Angular.js 400 错误请求
Spring, Angular.js 400 Bad Request
我很难弄清楚为什么这个请求会遇到 400 BAD 请求:
{
email: "ccc@gmail.com"
lastfmUsername: "bluecun"
password: "a$if246VMeosRCNJibodEhueXGyQNiAHeJd3KVHi7WedjByECYeXO5."
username: "bluecun"
}
这是我的模型和控制器代码:
public class User {
private Long id;
private String username;
private String lastfmUsername;
private String email;
private String password;
...
}
@RequestMapping(value = "/register", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.APPLICATION_JSON_VALUE)
public
@ResponseBody
void register(@RequestBody User user) throws Exception {
semanticGraphDao.saveUser(user);
}
感谢您的回答。
首先你需要检查你的 JSON 是否格式正确,这意味着:属性用引号括起来,每个 属性 之间有一个冒号,例如:
{
"email": "ccc@gmail.com",
"lastfmUsername": "bluecun",
"password": "a$if246VMeosRCNJibodEhueXGyQNiAHeJd3KVHi7WedjByECYeXO5.",
"username": "bluecun"
}
最重要的是,检查用户 class 的构造函数。它必须有一个默认构造函数:
public class User {
private Long id;
private String username;
private String lastfmUsername;
private String email;
private String password;
public User() {
}
// Getters and Setters
}
最后,检查 Spring 引导日志 - 可能显示 Jackson 的某种异常,这将指导您如何解决映射问题。
我很难弄清楚为什么这个请求会遇到 400 BAD 请求:
{
email: "ccc@gmail.com"
lastfmUsername: "bluecun"
password: "a$if246VMeosRCNJibodEhueXGyQNiAHeJd3KVHi7WedjByECYeXO5."
username: "bluecun"
}
这是我的模型和控制器代码:
public class User {
private Long id;
private String username;
private String lastfmUsername;
private String email;
private String password;
...
}
@RequestMapping(value = "/register", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.APPLICATION_JSON_VALUE)
public
@ResponseBody
void register(@RequestBody User user) throws Exception {
semanticGraphDao.saveUser(user);
}
感谢您的回答。
首先你需要检查你的 JSON 是否格式正确,这意味着:属性用引号括起来,每个 属性 之间有一个冒号,例如:
{
"email": "ccc@gmail.com",
"lastfmUsername": "bluecun",
"password": "a$if246VMeosRCNJibodEhueXGyQNiAHeJd3KVHi7WedjByECYeXO5.",
"username": "bluecun"
}
最重要的是,检查用户 class 的构造函数。它必须有一个默认构造函数:
public class User {
private Long id;
private String username;
private String lastfmUsername;
private String email;
private String password;
public User() {
}
// Getters and Setters
}
最后,检查 Spring 引导日志 - 可能显示 Jackson 的某种异常,这将指导您如何解决映射问题。