Después de tratar de "iniciar sesión con Google", que estoy viendo este error en los registros:Fallo de Devise/Omniauth: ¿Cómo depurarlo?
Processing by Users::OmniauthCallbacksController#failure as HTML
puedo ver todos los datos de Google de ser enviado a través de la dirección URL (en los registros), incluyendo usuario correo electrónico y nombre Entonces, ¿qué podría salir mal? Mis devoluciones de llamada ni siquiera se están ejecutando. Solo me redirigen a la página de inicio de sesión de mi sitio.
Y estoy bastante seguro de que todo está configurado correctamente, porque esto funcionó bien hace algunas semanas. No creo que haya cambiado nada. El inicio de sesión en Facebook sigue funcionando bien.
¿Alguna idea sobre cómo depurar esta falla? No hay nada más en los registros, aparte de esas URL largas llenas de parámetros y valores. Solo mensajes INFO. El publicado arriba es el único que dijo algo sobre un error.
ACTUALIZACIÓN
I añadió un método 'fracaso' al controlador
def failure
render :text => params.inspect
end
que paró las redirecciones, y se imprime esta:
{}
La url era la siguiente:
/users/auth/google/callback?_method=post&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fud&openid.response_nonce=2012-04-16T12%3A25%3A49Z_v1fNngSQJaHBQ&openid.return_to=http%3A%2F%2Fdev.myapp.me%3A3000%2Fusers%2Fauth%2Fgoogle%2Fcallback%3F_method%3Dpost&openid.assoc_handle=AMlYA9Urw_lYamPphTSdQ9a6DU0Ez0y5RaDDM78qPL7Xgm77nMpJiB85&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cns.ext1%2Cext1.mode%2Cext1.type.ext5%2Cext1.value.ext5%2Cext1.type.ext8%2Cext1.value.ext8%2Cext1.type.ext2%2Cext1.value.ext2&openid.sig=2FPjo7U1e%2Fde248XpUgjQLduNAM%3D&openid.identity=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawk1F5U6x_-kJnydjoww5haU41tquh1Zl2c&openid.claimed_id=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawk1F5U6x_-kJnydjoww5haU41tquh1Zl2c&openid.ns.ext1=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0&openid.ext1.mode=fetch_response&openid.ext1.type.ext5=http%3A%2F%2Faxschema.org%2FnamePerson%2Ffirst&openid.ext1.value.ext5=Some_User&openid.ext1.type.ext8=http%3A%2F%2Faxschema.org%2Fcontact%2Femail&openid.ext1.value.ext8=some_email%40gmail.com&openid.ext1.type.ext2=http%3A%2F%2Faxschema.org%2FnamePerson%2Flast&openid.ext1.value.ext2=Some_User
Entonces, la cuestión es que todos los datos que necesito están en la URL, pero idee/omniauth no la está agarrando (y aparentemente es por eso que está llamando al método de "falla" en lugar de llamar). No sé si debería ser accesible a través de la matriz 'params', o qué.
También estoy intrigado con la parte ?_method=post
, porque todas las solicitudes a mi sitio son solicitudes GET. Tal vez solo significa que la solicitud hecha por omniauth a google fue POST.
¿Alguna idea?
También debe informar a las personas que necesitarán instalar la gema de palanca para que esto funcione https://github.com/pry/pry – Will