Omniauth + Pow Issue

У меня возникла странная проблема с Pow и Omniauth. Omniauth (вход через Facebook) отлично работает при использовании localhost:3000, но при использовании Pow (appname.dev) возникают проблемы.

Пользователи проходят через перенаправление и правильно создаются, если они не существуют в базе данных, как и должно быть. Однако после этого они перенаправляются на root_path и не входят в систему. Их запись сохраняется в базе данных, как и ожидалось, но вход не происходит. Опять же, это происходит только на Pow (и lvh.me), а не на локальном хосте.

Есть идеи?

Я использую подход Devise/Omniauth для входа, а код контроллера выглядит так:

  def facebook

    @user = User.find_for_facebook_oauth(request.env["omniauth.auth"], current_user)

    if @user.persisted?
      flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "Facebook"
      sign_in_and_redirect @user, :event => :authentication
    else
      session["devise.facebook_data"] = request.env["omniauth.auth"]
      redirect_to new_user_registration_url
    end
  end

Опять же, пользователь сохраняется, но при использовании POW не возникает мгновенного уведомления или входа в систему.


person neon    schedule 07.06.2012    source источник
comment
Похоже, что-то мешает установке файла cookie сеанса. Не могли бы вы опубликовать код действия контроллера, который должен это сделать?   -  person cdesrosiers    schedule 10.06.2012
comment
Обновлен вопрос с кодом контроллера.   -  person neon    schedule 12.06.2012
comment
Вы были правы - просто нужно было очистить куки моего браузера. Глупая ошибка, спасибо @cdesrosiers — не стесняйтесь присылать ответ на награду!   -  person neon    schedule 12.06.2012
comment
Без проблем! Это было полезно и мне.   -  person cdesrosiers    schedule 12.06.2012


Ответы (1)


Убедитесь, что сеанс установлен, поскольку что-то может мешать ему (например, в вашем случае необходимо очистить файлы cookie браузера).

person cdesrosiers    schedule 11.06.2012