[英]Wrong facebook login callback url port, using rails devise omniauth
我可以在本地使用Rails应用程序,并使用rails devise和omniauth与Facebook连接,但是当我要部署它时,facebook回调端口是错误的。 单击“用facebook登录”后,当我可以输入我的登录名时,它会将我重定向到facebook,然后像这样回调我的应用程序:
http://myapp.cleverapps.io:8080/users/auth/facebook/callback?code=thelongcode#_=_
但它说“糟糕!Google Chrome无法连接到myapp.cleverapps.io:8080”同时,当我打电话时
http://myapp.cleverapps.io/users/auth/facebook/callback?code=thelongcode#_=_
有用。
我不明白为什么它可以在localhost:3000而不是在我的部署环境中工作。
为什么omniauth将8080添加到URL? 例如,我可以在此行将其设置为80吗?
devise_for :users, [...] :controllers => {[...] :omniauth_callbacks => "users/omniauth_callbacks"}
http://localhost:3000/
使用这些更新的设置,您应该能够在开发和生产中成功使用Facebook OmniAuth登录。
此外,再次检查您的配置是否允许在生产环境中使用Facebook ID和机密(存储在.ENV文件中)(可以在/config/initializers/devise.rb中设置)
即devise.rb
if Rails.env == 'development' || Rails.env == 'production'
config.omniauth :facebook, ENV['FACEBOOK_ID'], ENV['FACEBOOK_SECRET']
end
即.env
FACEBOOK_ID=123456789876543
FACEBOOK_SECRET=1aa11a111111a1aaa1a1aa11aaa11a11
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.