使用相同的facebook apikey进行heroku制作和本地开发

时间:2011-12-03 00:59:44

标签: ruby-on-rails facebook omniauth

我想在我的本地机器上测试我的rails应用程序,并在heroku上运行它。但是,如果我在Facebook应用程序设置中为“网站”字段指定我的IP地址,那么我的heroku会中断,反之亦然。有没有办法让它们都使用相同的API密钥?

如果没有,我如何告诉Omniauth使用一个api密钥用于开发环境而另一个api密钥用于生产环境?谢谢!

2 个答案:

答案 0 :(得分:1)

为dev(本地)和生产(Heroku)使用单独的FB应用程序。

从环境中读取密钥,如:

ENV [ “FACEBOOK_APP_ID”] ENV [ “FACEBOOK_SECRET”]

然后使用heroku config:add在Heroku的配置中设置密钥/信用。

在本地使用工头运行您的应用并在.env文件中设置开发键/信用卡。 http://blog.daviddollar.org/2011/05/06/introducing-foreman.html

请记住,FB要求您使用SSL,因此您需要在本地设置可以处理SSL请求的内容。

答案 1 :(得分:1)

您将需要创建另一个用于开发的开发Facebook应用程序,这就是我所做的,或者您必须在/ etc / hosts文件中创建一个条目,将您的Heroku应用程序的主机名指向本地计算机。