首页 > 解决方案 > 如何检查请求对象是否包含给定参数

问题描述

我有一个 REST 端点 /v1/abc。它是一种 POST 方法。在请求正文中,我发送了一个对象测试,如下所示。

Class Test {
   Boolean flag = null;
   String name = null;
}

我使用招摇来调用端点。

在请求正文中,我在下面设置。

{
 "name" : "hello"
}

如果您注意到,我根本不会发送标志。在我的 API 中,我想测试请求对象是否有标志。如果不存在,我会抛出异常。

你能告诉我如何实现这一目标吗?

标签: javaspring

解决方案


我假设您有一个POST像这样的简单方法:

@PostMapping(path = "/v1/abc")
public void addAbc(@RequestBody Test test) {
    //code
}

所以你可以检查test.getFlag() != null并随后引发异常。

作为替代方案,您可以添加@Valid到您的方法参数以启用JSR 303 bean 验证@NotNull在您的flag字段上使用。

小说明:class您示例中的关键字必须用小写字母书写。


推荐阅读