gpt4 book ai didi

spring - Redirect_Uri 在 Heroku 上通过 Spring 社交 Facebook 登录使用 http 而不是 https

转载 作者:行者123 更新时间:2023-12-05 03:05:22 26 4
gpt4 key购买 nike

这是 Heroku 上的 Spring MVC 应用程序和主机,它具有有效的 ssl 证书。

当我从 spring mvc web 应用程序中单击以下链接时

https://www.website.com/auth/facebook

它重定向到这个链接

https://www.facebook.com/v2.5/dialog/oauth?client_id=1234567890&response_type=code&redirect_uri=http%3A%2F%2Fwww.website.com%2Fauth%2Ffacebook&scope=email&state=62b62bad-f8c8-44a3-bacf-a13ce12dfcce

在这种情况下,redirect_uri 使用 http 而不是 https。如何强制 https 到 redirect_uri?

我已经按照这个问题中提到的解决方案 Spring OAuth redirect_uri not using https

并创建了以下文件,但没有用。

application.propeties 文件包含

server.tomcat.remote-ip-header=X-Forwarded-For
server.tomcat.protocol-header=X-Forwarded-Proto
server.use-forward-headers=true

security.oauth2.client.pre-established-redirect-uri=https://www.website.com/login
security.oauth2.client.registered-redirect-uri=https://www.website.com/login
security.oauth2.client.use-current-uri=false

最佳答案

如果您使用的是 .net core 应用程序,则在 Configure 方法的 Startup.cs 文件中添加以下行 It should be work .

app.Use((context, next) =>
{
if (context.Request.Headers["x-forwarded-proto"] == "https")
{
context.Request.Scheme = "https";
}
return next();
});

关于spring - Redirect_Uri 在 Heroku 上通过 Spring 社交 Facebook 登录使用 http 而不是 https,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51054254/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com