我们有一个使用的rest API Spring OAuth2
.用户通过身份验证后,所有JSON响应都采用以下格式:
{"code" : 12345, "data" : "..." }
Run Code Online (Sandbox Code Playgroud)
但是,身份验证失败的JSON响应与上述格式不一致,因为它由Spring处理.
例如,如果凭据不正确,客户端将获得带有JSON响应的HTTP状态代码400,如下所示:
{"error": "invalid_grant", "error_description": "Bad credentials" }
Run Code Online (Sandbox Code Playgroud)
如果用户帐户被锁定,客户端将获得具有JSON响应的HTTP状态代码400,如下所示
{"error":"invalid_grant","error_description":"User account is locked"}
Run Code Online (Sandbox Code Playgroud)
所有这一切都是因为Spring TokenEndpoint.handleException()正在处理与/ oauth/token相关的异常
我想更改OAuth2失败的JSON响应以遵循第一种格式.
这是我迄今为止尝试过的但没有成功:
任何上述方法或新方法的任何帮助将受到高度赞赏.
我没有尝试过这种方法,因为我无法更改现有客户端的上下文路径.