为什么强制将强制设置为YES?

时间:2018-03-21 07:07:10

标签: facebook

我正在使用facebook SDK。我收到以下错误:

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://

在学习之后,我开始知道我必须设置“强制使用HTTPS'根据' facebook登录>设置> &#39 ;.但我无法将强制HTTPS设置为NO。这个问题来自我的吗?或我facebook限制使用https而不是http?

4 个答案:

答案 0 :(得分:11)

启用客户端OAuth登录并在有效的OAuth重定向URI中写入“ localhost:3000”。
保存更改。它会自动更改为https://localhost:3000,但这没关系...
并设置状态:开发中(这很重要!)
然后它将在您的http localhost中工作。

答案 1 :(得分:6)

  

但是我无法将Enforce HTTPS设置为NO。这个问题来自我的吗?

https://developers.facebook.com/docs/facebook-login/security

  

实施HTTPS。此设置要求OAuth重定向的HTTPS和使用JavaScript SDK访问令牌的页面。 截至2018年3月创建的所有新应用都默认启用此设置,您应该计划在2019年3月之前将所有现有应用迁移到仅使用HTTPS网址。

听起来对我来说,就像他们现在不想在没有HTTPS的情况下启动一样,当你正在创建一个新的应用程序时。

此外,Chrome最近宣布他们将很快标记所有HTTP站点,从版本68开始,将于2018年7月发布。因此,您将不得不提前使用HTTPS,而不是以后。

无论我们是否愿意,这个行业的“大玩家”正在推动这个重要时刻。

答案 2 :(得分:4)

如果您只是启用Client OAuth Login并仅将localhost:{port}写入有效的OAuth重定向URI,则该功能将起作用。

答案 3 :(得分:1)

如果您使用 create-react-app 进行本地开发,则快速解决方案是添加

HTTPS=true

到您的.env文件,只是在您没有测试Facebook登录时将其注释掉。