spring + jaxb 上有这种类型的休息服务:
@RestController
public class UserController {
@Autowired
private UserService service;
@RequestMapping(value = "/users", method = RequestMethod.POST)
public Users add(@RequestBody Users users,
@RequestParam(value = "id", required = false) String id) {
return service.add(id, users.getUsers());
}
@RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
public @ResponseBody Users findById(@PathVariable(value = "id") String id) throws Exception {
return service.find(id);
}
}
jaxb 库用于获取 xml 格式的正文。现在一切正常,我们在请求正文中传递有关用户的信息并获取它,但是需要服务扩展,以便它可以与 xml 和 json 一起使用。
如果缺少 Content-Type:application/xml 标头,则需要引发错误。对于 POST 方法,一切正常,GET 总是返回一个结果,而不管要传递哪个标头。
我怎样才能让它抛出错误或能够控制我们期望接收的内容,xml 或 json?
也就是说,您应该添加消耗。