当我尝试使用无所不在的facebook登录我的Rails应用程序时,我得到了以下错误。这是在本地主机上进行测试时的情况:3000:
不安全登录被阻塞:您无法从不安全的页面获取访问令牌或登录此应用程序。尝试将页面重新加载为https://
我看到了这个最近在SO上的其他帖子,但是Facebook似乎不允许我在我今天为这个应用程序创建的开发者控制台中更改“”设置。我可以改变旧应用程序的设置。
有什么办法解决这个问题或者绕开它吗?我将在生产中使用HTTPS,但只希望能够在开发中使用localhost (http)。
发布于 2018-03-19 13:05:56
在HTTPS模式下运行本地服务器是非常有用的,不仅仅是对于facebook。
尽管如此,Rails仍然以不要提供一种简单的方法模式运行rails服务器。但是有几种方法可以做到这一点:
使用服务器,而不是puma/webrick默认的。
thin服务器允许您以SSL模式运行应用程序,只需付出最少的努力:
编辑config/application.rb并添加:
config.force_ssl = true启动thin服务器:
$ thin start --ssl请参阅此处的详细信息:如何在两分钟内为Rails开发环境启用SSL?
ngrok 使用隧道工具
像ngrok这样的工具允许您轻松地创建一个从本地主机到互联网的隧道-它还为您创建了http://和https://端点:
$ rails s -p 3000
$ ./ngrok http 3000
ngrok by @inconshreveable (Ctrl+C to quit)
Session Status online
Session Expires 7 hours, 59 minutes
Version 2.2.8
Region United States (us)
Web Interface http://127.0.0.1:4040
Forwarding http://2608e936.ngrok.io -> localhost:3000
Forwarding https://2608e936.ngrok.io -> localhost:3000 复制生成的url (如https://2608e936.ngrok.io,并使用它访问本地服务器)。
https://stackoverflow.com/questions/49353496
复制相似问题