我想在发送帖子请求时修复json模式

时间:2018-01-28 08:31:09

标签: rest spring-boot

{"vehicle_number": "KA222009","vehicle_type":"sedan"}

这个json我正在发送一个POST请求,它会被保存!我在spring boot中使用了Request body serverside,所以它很好,但是当我像

一样发送时
{"vehicle_number": "KA222009","vehicle_type":"sedan","username":"abc"} 

这也会使用我的RequestBody类的匹配属性进行保存。我不想以这种方式限制用户玩这个请求。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

您是否有实体将该请求保存到?喜欢

class Vehicle{
String vehicle_number;
String vehicle_type;
}

你需要输入这样的参数

myfunction(@RequestBody Vehicle vehicle)

我认为应该抛出异常。

编辑1:

类车辆应注明@Entity

最好返回ReponseEntity<?>而不是实际的数据类型

编辑2:

另一方面,如果您希望您的Vehicle实体拥有用户名但限制用户更改用户名,那么您只需将其从Vehicle构造函数中排除。

答案 1 :(得分:0)

要添加Rei Brown的答案,您可能不仅想要创建数据类,还需要Bean Validation。例如:

@RequestMapping(/*....*/)
public void save(@Valid @RequestBody Vehicle vehicle){ 
    // ... save logic here
}