2011-04-06 25 views
7

he seguido el tutorial en el wiki de github idear: https://github.com/plataformatec/devise/wiki/OmniAuth%3A-Overview+ + OmniAuth Rememberable

Así que he creado un controlador OmniAuth para las devoluciones de llamada, pero está sin pasar por el controlador de sesiones normales y por lo tanto, la cookie rememberable no está configurado.

¿Cuál es la mejor manera de solucionarlo?

Gracias por su ayuda.

EDITAR: The Gist desde mi código de controlador: https://gist.github.com/913164 Así que creo que el signo en una redirección simplemente establece la cookie de sesión, no la memorable.

EDIT 2: También tengo una puerta trasera para la muestra dev y evitar FB se conectan en mi máquina local:

def backdoor 
     if RAILS_ENV == "development" 
      @user = User.first 
      @user.remember_me! 
      sign_in_and_redirect @user, :event => :authentication 
     end 
    end 

no funciona bien, así que podría tener un problema en otro lugar.

+1

No creo que pueda usar la cookie rememberable usando omniauth ya que oauth es una autenticación basada en sesión. – Gazler

+0

Bueno desde omniauth estoy pidiendo un token persistente, así que lo guardo y creo un usuario, así que tengo un usuario "real" para recordar. – rnaud

+0

¿Has visto [esta pregunta/respuesta AS] (http://stackoverflow.com/questions/4475726/devise-and-omniauth-remembering-oauth)? –

Respuesta

1

Maldición esto es viejo, perdón por dejar que se quede aquí tanto tiempo.

Desde mi respuesta en los comentarios al parecer, en el 11' , se me olvidó añadir esto:

@user.remember_me = true 

Ahora vamos a cerrar esta.

Cuestiones relacionadas