簡體   English   中英

Rails:Omniauth:Github提供程序不太起作用

[英]Rails: Omniauth: Github provider doesn't quite work

我最近分叉https://github.com/fortuity/rails3-mongoid-omniauth並試圖讓登錄為不同的提供商工作。 它適用於Twitter和Facebook(您可以在http://jgodse-omniauth-mongoid.heroku.com/上試用它),但我無法讓它為Github工作。 代碼快照在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

客戶端和機密在omn​​iauth.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應該允許兩者,然后在需要時自動修剪它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM