我正在尝试使用提供的 Ruby Heroku 包开发 Facebook 应用程序。我之前已经尝试过这个,但只是创建了一个新的应用程序来开发。我遇到无法使用该应用程序登录的问题。我点击一个按钮登录,但在重定向之后,我发现什么都没有发生。不过,每 20 次左右尝试一次,它就会让我正确登录。
对于那些从未使用过 Facebook 的 Heroku 主机的人来说,这里是安装的模板。我所做的唯一更改是将应用程序模块化。
相关路由如下:
get "/auth/facebook" do
session[:access_token] = nil
redirect authenticator.url_for_oauth_code(:permissions => FACEBOOK_SCOPE)
end
get '/auth/facebook/callback' do
session[:access_token] = authenticator.get_access_token(params[:code])
redirect '/'
end
有没有人经历过这种情况?如果您想尝试自己,这就是应用程序的位置。我有一个类似的运行没有出现这个问题,所以我真的无法弄清楚。
编辑:我想我发现了问题。根据 New Relic的这条信息,我将 Unicorn preload_app 设置为 false 。将 preload_app 设置为 true 已经解决了这个问题。不幸的是,我不记得为什么我首先将其设置为 false(我已经从以前的应用程序中调整了一些配置内容)。也许有人比我有更好的知识。