本文介紹了如何向異常響應(yīng)中添加消息的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
我使用Next:java11+Spring-Boot:2.4.3.
我在控制器中有Next方法:
@PutMapping("/{id}")
@ResponseBody
public void update(@PathVariable("id") long id, @RequestBody OrderDto orderDto) {
try {
myService.update(id, orderDto);
} catch (OrderMovementException e) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST, e.getLocalizedMessage(), e);
}
}
嗯,它適用于測(cè)試或日志記錄,我可以看到狀態(tài)和消息。
但我的前端同事收到下一條消息,其中消息為空:
{"timestamp":"2022-01-24T11:20:48.726+00:00","status":400,"error":"Bad Request","message":"","path":"/service/api/orders/12345"}
我需要更改哪些內(nèi)容才能解決此問題?
提前謝謝。
推薦答案
您的方法可以改為或返回空返回類ResponseEntity
。有關(guān)如何使用它,請(qǐng)參閱一篇文章:Using Spring ResponseEntity to Manipulate the HTTP Response。提供詳細(xì)錯(cuò)誤消息的另一種方法是編寫一個(gè)用@ControllerAdvice
注釋的類。請(qǐng)?jiān)诖颂幉榭从嘘P(guān)這方面的信息(以及其他內(nèi)容):Building REST services with Spring
這篇關(guān)于如何向異常響應(yīng)中添加消息的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,