tutorial rails google gema ruby-on-rails devise omniauth warden

ruby-on-rails - google - omniauth rails api



Diseñar lanzando HTTP auth en XHR y cerrar la sesión (1)

Su llamada AJAX probablemente no está configurando el token CSRF. Es posible que deba actualizar su gema UJS (jquery-rails probablemente) o establecer manualmente el encabezado X-CSRF-Token HTTP en el valor de la etiqueta. Vea esta pregunta: idee la sesión que expira inmediatamente en la llamada de .js [AJAX] . Puede probar si este es el problema al desactivar temporalmente la protección CSRF config.allow_forgery_protection = false en config/application.rb .

Si sigue la ruta manual, probablemente debería tomar primero el valor de la metaetiqueta ''authenticity_token'' y usarla como el nombre de la metaetiqueta del token real, en lugar de codificar la referencia a ''csrf-token''.

Recomendaría actualizar a Rails 3.0.10 o 3.1 si puede. Todavía estaba teniendo problemas en 3.0.7.

Estoy teniendo un montón de problemas con Devise, utilizando OmniAuth, para autenticar mi aplicación Rails. Relanzar mi servidor y abrir una nueva pestaña en modo incógnito (para que las cookies se borren) y cargar mi aplicación. Me conecto, y luego voy a la aplicación.

Cuando llego a una página que llama a una acción autenticada a través de AJAX, solicita un nombre de usuario y contraseña a través de autenticación básica HTTP. Inhabilité esto en mi dispositivo.rb .

config.http_authenticatable = false config.http_authenticatable_on_xhr = false

Cuando vuelvo a una página anterior, me redirige a la página de inicio de sesión y solicita un inicio de sesión. Esto también ocurre cuando visito una página que no requiere autenticación y luego regreso a una página autenticada .

Esto se está volviendo inmensamente frustrante. He desempaquetado a Devise y Warden en mi directorio de proveedores / gemas para que pueda intentar depurarlo, pero sinceramente no puedo entender por dónde empezar. Cualquier ayuda sería muy apreciada.