嘿所以我似乎无法让Facebook,OmniAuth,Rails和Heroku一起玩。一切都在当地很好。
问题
会发生什么?点击登录时它根本不做任何事情。在Firebug上,本地显示Facebook Oauth请求被解雇,但在真实网站上没有发生此类请求。而是在控制台中,我收到消息FB.login() called before FB.init()
。
当我更改Facebook上的网址并尝试在本地登录时,我收到来自Facebook的错误消息,这意味着发生了请求。所以,我认为这个问题与证书有关。
这并没有解决它:omniauth with facebook not working on production,虽然我不确定要放入什么权限。我没有使用任何扩展的fb图形权限,它在本地工作而没有指定任何(参见下面的初始化程序)。
我的设置
在Facebook上的“选择你的应用与Facebook集成的方式”下,我选择了Website with Facebook login
,对于“网站网址”,我有工作http://0.0.0.0:3000
或无法工作http://mysite.tld
。< / p>
这是我的omniath.rb初始化程序
OmniAuth.config.logger = Rails.logger
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_SECRET'], {
client_options: { ssl: {
ca_file: '/usr/lib/ssl/certs/ca-certificates.crt',
ca_path: "/etc/ssl/certs"
}}
}
end
此外,我正在使用带屏蔽的自定义域名,如果出现问题,请使用fyi。我再也不这么认为,因为我会得到一个错误的屏幕而不是什么,但为了以防万一。
谢谢,我真的很期待您提出的任何提示或疑难解答!我打算在博客上写一篇关于设置所有这些内容的教程,因为这是一场噩梦。
答案 0 :(得分:0)
问题在于我拼错了一个变量。代码很好......
感谢@Ashitaka帮助我的双倍努力!