我正在使用java spring mvc和angular js .
我创建了一个休息服务:
@RestController
public class UserApiController {
@Autowired
private UserService userService;
@RequestMapping(value = "/users/createUser", method = RequestMethod.POST)
public @ResponseBody void addUser(@RequestBody UserRequestDTO newUser) {
userService.addUser(newUser);
}
我的角度控制器是这样的:
var newUser = { surname : "orozco", name: "daniel", password: "pepe", email:"dani@dani.com" };
$http.post(getCompletePath("users/createUser"), JSON.stringify(newUser))
.success(function () {
alert("ok");
}).error(function () {
});
我的UserRequestDTO
public class UserRequestDTO {
private String email;
private String password;
private String name;
private String surname;
吸气剂和二传手
它返回以下错误:415(不支持的媒体类型) .
如果我发送一个字符串o没有参数,它的工作原理 . 所以,问题在于参数
3 回答
我不知道AngularJS,但尝试在AngularJS代码中添加Content-Type . 它应该看起来像这样(根据规范https://docs.angularjs.org/api/ng/service/ $ http):
这可能是因为Content-Type标头,尝试显式包含它,如下所示,
我忘了在pom.xml中包含org.codehaus.jackson . 它解决了这个问题