Несовместимость между Rails 2.3.5 и Omniauth - PullRequest
1 голос
/ 13 июня 2011

Я использую Rails 2.3.5 и хочу использовать Omniauth, однако я не могу заставить их работать вместе, поскольку для rails 2.3.5 требуется Rack 1.0.1 и Omniauth (версия 0.1.6), требующий Rack 1.1

Я развернул на Heroku, поэтому не верю, что смогу взломать Rails и убрать жесткую зависимость от версии 1.0.1 Rack.

Любая помощь очень ценится.

Пол

1 Ответ

2 голосов
/ 13 июля 2011

У нас была похожая проблема. Мы были на Rails 2.3.4 и хотели использовать OmniAuth (0.2.6). К сожалению, единственное возможное решение, которое я нашел до сих пор, - это обновить до Rails 2.3.8 или более поздней версии, которая работает на Rack 1.1 (минимум, необходимый для 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

К сожалению, я сейчас нахожусь в центре всего этого, поэтому я не могу обещать, что это работает полностью, так как я использую собственную стратегию и еще не дошел до конца. Надеюсь, это даст вам отправную точку, чтобы вырыть глубже, если вы все еще застряли на этом, если ничего больше.

...