我知道在SO上有大约一百个这样的问题,但是它们中没有一个可能与Facebook平台上现在正在发生的事情保持同步。似乎关闭SSL的开关被禁用:
可能很难看到,但“强制HTTPS”切换是灰色的,无法切换。我全都是为了在生产中强制执行HTTPS,但是为了这个而建立针对facebook API的每个人真的在他们的本地服务器上设置了SSL证书吗?
您仍然可以将HTTP与“localhost”地址一起使用,但仅限于您的应用仍处于开发模式时。
您可以从App Dashboard将应用模式更改为开发模式:
在此模式下,您只能使用Facebook测试用户帐户测试您的应用程序。您可以从应用仪表板获取测试帐户登录凭据。
请注意,http://localhost重定向仅在开发模式下自动允许,不需要在Valid OAuth Redirect URIs部分中添加。
在this Facebook Blog中了解更多相关信息。
将其粘贴到您的客户端json中
"start": "set HTTPS=true&&react-scripts start"
,
下一个副本并在您的网址栏中输入。
chrome://flags/#allow-insecure-localhost
,
并设置允许从localhost加载的资源的无效证书启用
此设置要求OAuth重定向为HTTPS,并且要求返回或要求访问令牌的Facebook JavaScript SDK调用仅来自HTTPS页面。截至2018年3月创建的所有新应用都默认启用此设置,您应该计划在2018年10月6日之前将任何现有应用迁移到仅使用HTTPS网址。
大多数主要云应用程序主机为您的应用程序提供免费和自动的TLS证书配置。如果您自行托管您的应用程序或您的托管服务默认不提供HTTPS,您可以从Let's Encrypt获取您的域的免费证书。
https://developers.facebook.com/docs/facebook-login/security