Приложение Facebook, использующее Devise, перенаправляется с FB Canvas

Когда пользователь устанавливает мое приложение facebook в первый раз, отображается логотип facebook, запрашиваются разрешения, а затем пользователь выталкивается из iframe.

Недавно (14 октября) я применил инструкции, добавленные на вики-страницу с обзором OmniAuth на сайте разработки относительно потерянных сеансов. И это устранило все мои проблемы с перенаправлением, за исключением случаев, когда появляется диалоговое окно разрешений.

Кто-нибудь еще это видит? Любая идея, как исправить? Помощь!


person Liana    schedule 26.10.2011    source источник


Ответы (1)


Разобрался сам.

На вики-странице обзора OmniAuth предлагается исправление, приведенное ниже в application_controller.rb, чтобы исправить потерянные сеансы:

def authenticate_user!
  if !current_user
    # This should work, but session is lost. 
    # session[:return_to] = request.fullpath
    redirect_to user_omniauth_authorize_path(:google_apps, :origin => request.fullpath)
  end
end

Но вместо использования request.fullpath в приведенном выше фрагменте нужно использовать request.env["HTTP_REFERER"].

person Liana Leahy    schedule 01.11.2011