Spring OAuth2.0:如何向授权代码 (/oauth/authorize) 响应添加自定义查询参数?

Spring OAuth2.0: How can I add a custom query parameter to the Authorization code (/oauth/authorize) response?

我看到这里的redirectUri里面插入了授权码AuthorizationEndpoint.java

private String getSuccessfulRedirect(AuthorizationRequest authorizationRequest, String authorizationCode) {

    if (authorizationCode == null) {
        throw new IllegalStateException("No authorization code found in the current request scope.");
    }

    Map<String, String> query = new LinkedHashMap<String, String>();
    query.put("code", authorizationCode);

    String state = authorizationRequest.getState();
    if (state != null) {
        query.put("state", state);
    }

    return append(authorizationRequest.getRedirectUri(), query, false);
}

我希望能够在 query.put() 所在的位置添加一段代码,但我无法成功扩展 class。我无法弄清楚 where/how 将其配置为我想首先访问的身份验证端点。我还发现我需要扩展整个 class 只是为了添加几行代码以便将另一个查询参数附加到授权代码响应 uri 有点极端。

谢谢

我不确定为什么我的问题遭到否决,但无论如何...

因为@dur 的评论基本上说我不能那样做。顺便说一句,谢谢(我看不出有什么方法可以支持你的评论,我是 SO 的新手)。

解决方案:我决定创建一个自定义身份验证过滤器,在登录页面出现之前进行过滤。我做了一些验证并将其传递给身份验证。从那里,我为我的过滤器添加了一个自定义成功处理程序并重定向到 /oauth/authorize 以跳转到我预期的授权代码流。