OmniAuth не можа знайсці маршрут

Я спрабую рэалізаваць OmniAuth з маім Rails 3 дадатку. Я пайшоў за падручнік з Railscast episod 205 , але можа » т прымусіць яго працаваць. Калі я называю «/ аўтэнтыфікацыі/Twitter» (гэта не працуе з любым правайдэрам) Rails скардзіцца, што не можа знайсці падыходны маршрут (ён спрабуе загрузіць мой маршрут па змаўчанні).

Я дадаў omniauth.rb пад конфіг/Инициализаторы/, пакласці каштоўны камень 'OmniAuth' у маёй Gemfile, і бегала расслаеннем ўстаноўкі.

Я не ўпэўнены, як адладзіць гэтую праблему, ні якую інфармацыю падаць, каб дапамагчы зразумець гэтую праблему.

2

3 адказы

Пасля некаторых даследаванняў я знайшоў рашэнне. Я дадаў наступнае да майго routes.rb файл:

get 'auth/:provider' => 'authentications#passthru'

і мой кантролер аўтарызацыі:

  def passthru
    render :file => "#{Rails.root}/public/404.html", :status => 404, :layout => false
  end

Не ведаю, чаму я павінен быў зрабіць гэта, але гэта працуе ...

1
дададзена
Эй ... Гэта працуе для мяне таксама. Ці атрымалі вы якія-небудзь больш падрабязную інфармацыю пра тое, чаму гэта працуе?
дададзена аўтар felix, крыніца

Вось мае крокі, каб атрымаць яго працу:

1) Дадаць OmniAuth ў ваш Gemfile

2) Дадаць OmniAuth стратэгію вашага Gemfile ( OmniAuth-LinkedIn , напрыклад)

3) Run bundle install

4) Add the omniauth initializer in config/initializers/omniauth.rb

5) Add the match auth/:provider/callback => users#omniauth route to routes.rb (point it to the controller/action where you'll handle the authentication response)

6) Пабудуйце дзеянні, каб апрацаваць адказ ідэнтыфікацыі ў кантролеры вы спасылкі на кроку 4

7) Перазагрузіце вэб-сервер

<�Моцны> Па змаўчанні /аўт. /: Пастаўшчык маршрут не быў прызнаны для мяне, пакуль я не быў адноўленая Apache

1
дададзена

Вы павінны дадаць «OmniAuth-твітэр» да вашага Gemfile, і

:strategy_class => OmniAuth::Strategies::Twitter

ваш omniauth.rb , у канцы пастаўшчыка твітэры.

Тады ён распазнае шлях/аўтарызуюцца/шчэбет.

0
дададзена