【问题标题】:Devise/OmniAuth/Twitter - OAuth::Unauthorized (401)设计/OmniAuth/Twitter - OAuth::未授权 (401)
【发布时间】:2012-08-02 22:39:04
【问题描述】:

我正在尝试使用 Devise/OmniAuth 设置 Twitter 登录,遵循最新的 RailsCast。我已经注册了 Twitter 开发者应用,使用的回调 url 为:myiphere:port/users/auth/twitter

我已经关注 RailsCast 上的所有内容,但每次单击 Sign In With Twitter 链接时,我都会立即获得 OAuth::Unauthorized 401 Unauthorized on the myiphere:port/users/auth/twitter page

我想我已经使用export TWITTER_CONSUMER_KEY=MYKEYINSERTEDHERE export TWITTWR_CONSUMER_SECRET=MYSECRETINSERTEDHERE rails server 正确定义了密钥。我已经尝试了大多数我可以在互联网上找到的解决方案,但都无济于事。几乎所有的答案都是登录后返回他们的网站,我无法访问任何类型的 Twitter 屏幕,只有 /users/auth/twitter 页面上的 401 错误。

【问题讨论】:

    标签: twitter devise omniauth


    【解决方案1】:

    我也有同样的问题;就我而言,我正确设置了 API 密钥,但没有在 Twitter 设置中的“设置”选项卡下的 https://dev.twitter.com/apps/ 设置回调 URL。

    奇怪的是,回调 URL 似乎不需要指向任何有用的地方; Twitter 显然只是利用它的存在作为某种信号。

    omniauth-twitter 提供的调试信息还有待改进。

    【讨论】:

      【解决方案2】:

      我通过从初始化程序 DEVISE.RB 中删除括号和 ENV 来使其工作:

      config.omniauth :twitter, "APP_ID", "APP_SECRET"
      

      我在 DEV Twitter 设置中指定的回调:

      http://www.mysite.com/users/auth/twitter/callback
      

      在 routes.rb 中

      devise_for :users, controllers: {omniauth_callbacks: "omniauth_callbacks"}
      

      我的登录链接:

      <%= link_to "Log in with Twitter", user_omniauth_authorize_path(:twitter) %>
      

      【讨论】:

      • 你为我节省了数小时的挫败感。我也在使用 ENV vars 设置我的初始化程序,并且也有一个范围。无论出于何种原因,对于某些用户,我在身份验证时得到了 401。在对值进行硬编码之后,它现在似乎对每个人都有效。 A)谢谢 B)什么?!
      【解决方案3】:

      在这里回答我自己的问题,似乎我只需要添加实际的键来代替TWITTER_CONSUMER_KEYTWITTER_CONSUMER_SECRET,而不是我最初尝试添加它们的方式。我还从每个人中删除了ENV[],我认为这可能会有所帮助。

      【讨论】:

        【解决方案4】:

        您需要添加 figaro gem 才能使用视频中的环境变量。该链接将引导您完成设置。

        http://railsapps.github.io/rails-environment-variables.html

        【讨论】:

          【解决方案5】:

          对我来说,问题是“允许此应用程序用于使用 Twitter 登录”未选中(在应用程序页面 > 设置选项卡下)

          【讨论】:

            猜你喜欢
            • 2012-06-24
            • 2012-04-08
            • 2013-06-15
            • 2014-11-10
            • 2017-10-05
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多