如何在 Spring OAuth 中相对重定向到授权端点?

How to make relative redirect to Authorization Endpoint in Spring OAuth?

我用 oauth2Login 配置了一个服务。

当 he/she 未被授权时,用户被重定向到授权端点 - /oauth2/authorization/{registrationId}

我想以考虑路径前缀的方式自定义重定向,因为可以通过前缀 /api/myapp/.

访问应用程序

从源代码中我可以看到 Spring 安全设置期间有 OAuth2AuthorizationRequestRedirectWebFilter 并且此过滤器使用 DefaultServerRedirectStrategy 来决定位置是否是相对的。此外,它使用 contextPath,在使用 Spring Boot.

时很难设置

不幸的是,我不知道如何覆盖默认行为以进行相对重定向。

我不需要修改contextPath。相反,我已经将 ForwardedHeaderTransformer 注册为一个 bean。

此转换器能够检索由代理 (X-Forwarded-Prefix) 设置的 headers 并正确设置请求的上下文路径。