【发布时间】:2021-09-01 18:07:57
【问题描述】:
我想在创建新用户时返回一条成功消息:(它工作正常,但没有消息)
我的 PostController:
@RequestMapping(method=RequestMethod.POST)
public ResponseEntity<Void> insert(@Valid @RequestBody CarroDTO objDto){
Carro obj = service.fromDTO(objDto);
obj = service.insert(obj);
URI uri = ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}").buildAndExpand(obj.getId()).toUri();
return ResponseEntity.created(uri).build();
}
我的 CarroDTO:
公共类 CarroDTO 实现 Serializable{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private String id;
private String model;
private String marca;
private String ano;
public CarroDTO() {
}
public CarroDTO(Carro obj) {
id = obj.getId();
model = obj.getModel();
marca = obj.getMarca();
ano = obj.getAno();
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public String getMarca() {
return marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public String getAno() {
return ano;
}
public void setAno(String ano) {
this.ano = ano;
}
}
服务:
public Carro fromDTO(CarroDTO objDto) {
return new Carro(objDto.getId(), objDto.getMarca(), objDto.getModel(), objDto.getAno( ));
}
【问题讨论】:
-
通常,一个简单的
200 HTTP OK状态码就足够了,不需要消息。但是,当以客户端无法预测发生了什么的方式影响实体时,通常最好至少返回所有受影响对象的 ID,甚至是对象的完整表示。我不知道你是如何在 Spring Boot 中做到这一点的。 -
响应中的标头是什么。 --- 仅供参考: 响应根本不应该有正文,所以我不知道
1来自哪里,所以尝试查看 Raw 响应,以防漂亮的人掩盖了事情。
标签: java spring mongodb spring-boot postman