【问题标题】:Incompatability between Rails 2.3.5 and OmniauthRails 2.3.5 和 Omniauth 不兼容
【发布时间】:2011-06-13 11:40:40
【问题描述】:

我使用 Rails 2.3.5 并想使用 Omniauth,但我无法让它们一起工作,因为 rails 2.3.5 需要 Rack 1.0.1 而 Omniauth(版本 0.1.6)需要 Rack 1.1

我在 Heroku 上部署,所以我不相信我可以侵入 Rails 并删除对 Rack 1.0.1 版本的硬依赖。

非常感谢任何帮助。

保罗

【问题讨论】:

    标签: ruby-on-rails omniauth


    【解决方案1】:

    我们遇到了类似的问题。我们在 Rails 2.3.4 上,想使用 OmniAuth (0.2.6)。不幸的是,到目前为止,我发现的唯一可能的解决方案是升级到在 Rack 1.1 上运行的 Rails 2.3.8 或更高版本(OmniAuth 要求的最低要求),然后像这样需要 OmniAuth:

    # In config/environment.rb require 'omniauth' (or 'oa-<strategy_name>') before Rails::Initialize
    require 'omniauth'
    Rails::Initializer.run do |config|
      ...
    
    # Add your own initializer for OmniAuth
    # /config/initializers/omniauth.rb
    ActionController::Dispatcher.middleware.use OmniAuth::Builder do
      # your strategy provider logic
    end
    

    这主要是从这个线程/链接中修饰的:http://groups.google.com/group/omniauth/browse_thread/thread/676fa835428e9c83

    不幸的是,我现在正处于这一切的中间,所以我不能保证这会完全奏效,因为我正在使用自定义策略并且还没有完全完成。如果您仍然坚持这一点,如果没有别的,希望它为您提供一些深入挖掘的起点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-12
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多