加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails:Omniauth:Github提供商不太合适

发布时间:2020-12-17 03:52:35 所属栏目:百科 来源:网络整理
导读:我最近分叉了 https://github.com/fortuity/rails3-mongoid-omniauth并试图让登录为不同的提供商工作.它适用于Twitter和Facebook(你可以在 http://jgodse-omniauth-mongoid.heroku.com/试用),但我无法让它为Github工作.代码快照是 here at github. 我的环境
我最近分叉了 https://github.com/fortuity/rails3-mongoid-omniauth并试图让登录为不同的提供商工作.它适用于Twitter和Facebook(你可以在 http://jgodse-omniauth-mongoid.heroku.com/试用),但我无法让它为Github工作.代码快照是 here at github.

我的环境看起来像这样:

$heroku info
=== jgodse-omniauth-mongoid
Web URL:        http://jgodse-omniauth-mongoid.heroku.com/
Git Repo:       git@heroku.com:jgodse-omniauth-mongoid.git
Dynos:          1
Workers:        0
Repo size:      7M
Slug size:      5M
Stack:          bamboo-mri-1.9.2
Data size:      (empty)
Addons:         Basic Logging,MongoHQ MongoHQ Free,Shared Database 5MB
Owner:          xxxxx@yyy.com

Jay@JAY-PC ~/rapps/rails3-mongoid-omniauth (master)
$heroku config --long
BUNDLE_WITHOUT      => development:test
DATABASE_URL        => postgres://xxxxxxxxxxxxxxxxxxxx.compute-1.amazonaws.com/rrretnhwhj
FACEBOOK_APP_ID     => xxxxxxxxxxxxxxxxxxxx
FACEBOOK_APP_SECRET => xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
GITHUB_CLIENT_ID    => xxxxxxxxxxxxxxxxxxxxx
GITHUB_SECRET       => xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
LANG                => en_US.UTF-8
MONGOHQ_URL         => mongodb://heroku:9xxxxxxxxxxxxxxxx.mongohq.com:27098/app527030
RACK_ENV            => production
SHARED_DATABASE_URL => postgres://xxxxxxxxxxxxxxxxxxxxx.compute-1.amazonaws.com/rrretnhwhj
TWITTER_KEY         => xxxxxxxxxxxxxxxxxxx
TWITTER_SECRET      => xxxxxxxxxxxxxxxxxxxxxxxxxxxx

我关于“??OAuth应用程序:Jay的Rails3 Mongoid OAuth”的github信息如下(来自我的应用程序个人资料页面):

Authorization Token:   https://github.com/login/oauth/authorize
Access Token URL:      https://github.com/login/oauth/access_token
URL:     http://jgodse-omniauth-mongoid.heroku.com/
Callback URL:   http://jgodse-omniauth-mongoid.heroku.com/
Client ID: xxxxxxx
Secret:    xxxxxxxxxxxxxxxx

客户端和机密在omniauth.rb中设置为环境变量

验证发生,但它重定向到http://jgodse-omniauth-mongoid.heroku.com/?error=redirect_uri_mismatch,我没有显然登录.如果我将回调URL更改为http://jgodse-omniauth-mongoid.heroku.com/callback,应用程序崩溃.

我错过了什么让github身份验证工作?

解决方法

我不相信,而且相信这一点.

我去了github.com,其中配置了应用程序密钥,密钥,URL,回调,并从“回调URL”和“URL”中删除了尾部斜杠,并且它工作正常.

URL: http://jgodse-omniauth-mongoid.heroku.com
Callback URL:  http://jgodse-omniauth-mongoid.heroku.com

这太疯狂了! Twitter希望回调的尾随斜线,但Github没有. Github和twitter应该允许两者,然后在需要时自动修剪它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读