[英]“message” field is empty in error response Spring Boot
我已經處理過這樣的未經授權的異常
@ResponseStatus(value= HttpStatus.UNAUTHORIZED)
public class UnauthorizedException extends RuntimeException {
public UnauthorizedException(String message) {
super(message);
}
}
但是當我拋出錯誤如下
throw new UnauthorizedException("Invalid credentials");
我在響應中得到空的錯誤消息,如下所示
{
"timestamp": "2020-05-27T13:44:58.032+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/auth/register"
}
我嘗試使用,
throw new ResponseStatusException(HttpStatus.UNAUTHORIZED, "Invalid credentials");
但結果還是一樣。 當我添加spring-boot-devtools依賴項時,我也按預期收到了帶有堆棧跟蹤的消息。 我怎樣才能解決這個問題?
Spring 版本:2.3.0 Java 版本:11.0
好的,他們已將 server.error.include-message 的默認值更改為“never”(請參閱此處的評論部分: Spring 2.3.0 Release Info
此處列出了所有默認值: Spring 引導參考文檔
只需像這樣配置您的 application.yaml (或屬性)。
server:
error:
include-message: always
include-binding-errors: always
請注意,顯示錯誤消息可能會泄露有關您的服務器實現的信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.