如何使用 localhost 测试 Facebook 登录

问题描述 投票:0回答:2

我正在使用 Django,并且想要使用

django-allauth
来登录 Facebook。

我用了很少的时间就登录了Facebook,并用localhost进行了测试。

但是我发现2018年3月后FB登录需要

https
,所以当我在本地runserver登录fb时,它会出现类似
Insecure Login Blocked: You can't get an access token or log in to this app from an insecure page. Try re-loading the page as https://
的错误。

有什么方法可以在本地主机中测试fb登录吗?

django facebook facebook-javascript-sdk facebook-login django-allauth
2个回答
1
投票

您可以使用像

dev.yourdomain.com
这样的真实子域,并将其 DNS 指向
127.0.0.1
(或者可以使用
lvh.me
域,因为它也指向 127.0.0.1 - 但如果您始终信任它们)

然后你需要一个层来在本地处理

HTTPS
https://dev.yourdomain.com
。我推荐https://caddyserver.com/

通过像这样非常简单的配置,Caddy 可以使用其自签名 SSL 证书(查看 Caddy 文档以获取详细信息)

dev.yourdomain.com:443 {
    tls self_signed
    proxy / localhost:8080
}

然后你可以在Firefox、Safari、Brave等浏览器中打开

https://dev.yourdomain.com
(我认为Chrome默认阻止了自签名SSL网站)

更新我在这里创建了一个包含更多详细信息的注释

https://gist.github.com/ralavay/5d74d35859f87d22c74984488f20186c


0
投票

我正在尝试在本地主机上使用 facebook 测试此登录功能,但它无法正常工作,显示以下错误。

Facebook 检测到测试应用程序未使用安全连接来传输信息。 在测试应用程序更新其安全设置之前,您将无法使用 Facebook 登录它。

© www.soinside.com 2019 - 2024. All rights reserved.