当前位置: 首页 > 知识库问答 >
问题:

将数据绑定到RequestBody(415错误)

韩豪
2023-03-14

我的控制器中有以下内容:

@Controller
public class GreetingController {

    @PostMapping("/register")
    public String registerUser(@RequestBody UserEntity request) throws ServletException, IOException {
        System.out.println(request.getId());
        return "register";
    }

}

用户实体为:

@Entity
@Table(name = "users")
public class UserEntity {

    private int id;
    private String name;
    private String email;
    private String password;

我得到以下错误:

There was an unexpected error (type=Unsupported Media Type, status=415).
Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported

请注意,我已经安装了Jackson(来自这个问题:Jackson Databind类路径问题)。

此外,我可以很好地使用公共字符串registerUser(HttpServletRequest request),但是当我尝试使用@requestbody时,它就会给我带来这个错误。

如何使@RequestBody成为UserEntity?

共有1个答案

杜哲彦
2023-03-14

您在请求中使用头值“application/x-www-form-urlencoded;charset=utf-8”,而您应该使用“application/json”

 类似资料:
  • 我目前正在做一个项目,我需要向spring发送一个POST请求。我已经找了好几个小时的解决方案,但没有找到一个可行的。当我开发该部件时,请求起了作用。问题是,在创建一些新功能(另一个控制器中有两个新endpoint)后,用于创建或更新实体的POST请求停止工作,而不会更改特定区域中的代码。 控制器: 最初,关于消费和生产的部分不在那里,我尝试了它,因为在其他帖子上看到了它,但对情况没有帮助。 传感

  • 无论我尝试什么,发送给dispatcher servlet的请求都会返回HTTP 415错误。请求中将内容类型设置为application/json。 消息转换器似乎没有将请求映射到对象。 我的POM中有所有Jackson依赖项: 控制器类: 我试图在@刚需映射中添加接受、消费、生产,但没有成功。 我可以使用HttpServletRequest作为方法参数获得正确的JSON响应: 这一个在写入系统

  • 如何将MVVM值绑定到dropdownlist?下面的输入元素运行良好

  • 我正在创建一个asp.net页面,允许用户跨多个数据库搜索。 如果找到匹配项,我希望在主ListView中返回数据库名称。然后,我想在相应的数据库名称下,在嵌套的ListView中显示与搜索条件匹配的所有公司。 e. g.搜索:公司 后果 数据库1名称 数据库2名称 数据库3名称 如何引用和填充嵌套的ListView?

  • 如何将 itemcount 绑定到我的数据上下文以计算每个组中的所有项目,然后将其显示在标题中 我的项目绑定到的 视图模型 数据上下文 它之前用这个工作过 System. Windows. Data错误:4:找不到与引用绑定的源 'RelativeSource FindAncestor, AncestorType='System. Windows. Control. UserControl', A

  • 我正在开始使用特性。我正面临这方面的问题。