From f4b264435d8b9bd94336baa463d742424e4a1858 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=87=E5=81=A5=E9=99=80=E8=9E=BA=E7=8E=8B?= Date: Wed, 24 Jul 2024 10:07:27 +0000 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Djwks=E8=BD=AC=E4=B9=89?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../provider/endpoint/OauthJwksEndpoint.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/maxkey-protocols/maxkey-protocol-oauth-2.0/src/main/java/org/dromara/maxkey/authz/oauth2/provider/endpoint/OauthJwksEndpoint.java b/maxkey-protocols/maxkey-protocol-oauth-2.0/src/main/java/org/dromara/maxkey/authz/oauth2/provider/endpoint/OauthJwksEndpoint.java index 1cc55b1b8..0d9c85a8a 100644 --- a/maxkey-protocols/maxkey-protocol-oauth-2.0/src/main/java/org/dromara/maxkey/authz/oauth2/provider/endpoint/OauthJwksEndpoint.java +++ b/maxkey-protocols/maxkey-protocol-oauth-2.0/src/main/java/org/dromara/maxkey/authz/oauth2/provider/endpoint/OauthJwksEndpoint.java @@ -38,6 +38,8 @@ import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import java.io.IOException; + @Tag(name = "2-1-OAuth v2.0 API文档模块") @Controller public class OauthJwksEndpoint extends AbstractEndpoint { @@ -48,9 +50,9 @@ public class OauthJwksEndpoint extends AbstractEndpoint { value = OAuth2Constants.ENDPOINT.ENDPOINT_BASE + "/jwks", method={RequestMethod.POST, RequestMethod.GET}) @ResponseBody - public String keysMetadata(HttpServletRequest request , HttpServletResponse response, - @RequestParam(value = "client_id", required = false) String client_id) { - return metadata(request,response,client_id,null); + public void keysMetadata(HttpServletRequest request , HttpServletResponse response, + @RequestParam(value = "client_id", required = false) String client_id) throws IOException { + metadata(request,response,client_id,null); } @Operation(summary = "OAuth JWk 元数据接口", description = "参数mxk_metadata_APPID",method="GET") @@ -58,9 +60,9 @@ public class OauthJwksEndpoint extends AbstractEndpoint { value = "/metadata/oauth/v20/" + WebConstants.MXK_METADATA_PREFIX + "{appid}.{mediaType}", method={RequestMethod.POST, RequestMethod.GET}) @ResponseBody - public String metadata(HttpServletRequest request , HttpServletResponse response, + public void metadata(HttpServletRequest request , HttpServletResponse response, @PathVariable(value="appid", required = false) String appId, - @PathVariable(value="mediaType", required = false) String mediaType) { + @PathVariable(value="mediaType", required = false) String mediaType) throws IOException { ClientDetails clientDetails = null; try { clientDetails = getClientDetailsService().loadClientByClientId(appId,true); @@ -87,10 +89,12 @@ public class OauthJwksEndpoint extends AbstractEndpoint { }else { response.setContentType(ContentType.APPLICATION_JSON_UTF8); } - return jwkSetKeyStore.toString(mediaType); + response.getWriter().write(jwkSetKeyStore.toString(mediaType)); + } else { + response.getWriter().write(appId + " not exist . \n" + WebContext.version()); } - - return appId + " not exist . \n" + WebContext.version(); + + } }