Tengo una aplicación de rails 3 que utiliza el dispositivo para la autenticación y quiero usar javascript para ver si un usuario ha iniciado sesión. ¿Cuál es la mejor manera de hacerlo?Use javascript para verificar si ha iniciado sesión con el dispositivo
Respuesta
Desde Idear se basa en Warden, puede utilizar devoluciones de llamada de Warden para establecer una cookie de adicional que será visible desde js (al contrario que el servidor sólo cookie de sesión), por ejemplo, en su devise.rb:
Warden::Manager.after_set_user do |user,auth,opts|
auth.cookies[:signed_in] = 1
end
Warden::Manager.before_logout do |user,auth,opts|
auth.cookies.delete :signed_in
end
¿Funciona con Rails 4? – SsouLlesS
@SsouLlesS Casi. Tuve que cambiar la línea de eliminación (por alguna razón, 'cookies.delete' no eliminaba la cookie del navegador. Le asigné' 0' como 'valor' y' expire' a 'Time.now' al cerrar la sesión. –
Parece que Rails almacena la sesión en el cliente en el cookies.
Me echa para las cookies en su aplicación cuando está conectado (console.log(document.cookies)
) y ver lo que hay es no existe cuando se está desconectado.
De esta manera, verá cómo verificar si está conectado o no al cliente.
esto es lo que obtengo cuando reviso document.cookie, y no funciona t marcar la diferencia si está conectado o desconectado: __utma = 111872281.2045911381.1309470856.1334590129.1334935149.157; __utmz = 111872281.1309470856.1.1.utmcsr = (directo) | utmccn = (directo) | utmcmd = (ninguno); __utmc = 111872281 – Solomon
Las cookies de diseño son HttpOnly lo que significa que no puedes leerlas desde javascript. Para que esto funcione, creo que deberías establecer tu propia cookie. – Steve
- 1. ¿Cómo puedo verificar si el usuario es anónimo o ha iniciado sesión desde javascript?
- 2. comprobar si un usuario ya ha iniciado sesión?
- 3. ¿Cómo comprobar si un usuario ha iniciado sesión en php?
- 4. Metro App - Cómo detectar si ha iniciado sesión con Live ID o cuenta local
- 5. ¿Qué necesito para almacenar en la sesión php cuando el usuario ha iniciado sesión?
- 6. ¿Cómo programar una tarea si el usuario ha iniciado sesión o no en PowerShell?
- 7. Inicie sesión automáticamente en el sitio web actual si el usuario ha iniciado sesión en otro sitio web
- 8. Use JQuery para verificar si el elemento tiene un borde?
- 9. ¿Cómo verificar si el hilo ha finalizado?
- 10. Verificar/Verificar para ver si se ha instalado un Perfil de configuración en el iPhone
- 11. ¿Cómo puedo verificar si se ha configurado JavaScript-Eventhandler?
- 12. Determinar si el usuario ha iniciado una acción de JavaScript determinada
- 13. TYPO3 - Redirigiendo a la página de inicio de sesión cuando el usuario no ha iniciado sesión
- 14. Use jQuery para verificar si todos los div están ocultos
- 15. ¿Hay un evento/controlador symfony2 para el tiempo de espera de la sesión a.k.a no ha iniciado sesión
- 16. Obtener el PAPEL de un usuario que no ha iniciado sesión TWIG Symfony2
- 17. JavaScript: using typeof para verificar si string
- 18. use un dispositivo Android como un auricular para otro dispositivo
- 19. Probar que el usuario haya iniciado sesión con éxito
- 20. ¿Ha iniciado sesión en los archivos o en el visor de eventos?
- 21. Javascript: compruebe si el elemento ha cambiado
- 22. ¿Cuál es el comportamiento de Thread.join() en Java si el objetivo aún no se ha iniciado?
- 23. Compruebe si el archivo javascript se ha cargado
- 24. transacción de hibernación no se ha iniciado con éxito
- 25. Cómo detectar si un usuario ha cerrado sesión, en php?
- 26. Drupal: utilizar boostrap para comprobar que el usuario que ha iniciado sesión fuera de Drupal no está trabajando
- 27. ¿Cómo verificar si ya se ha cargado una sesión de rieles?
- 28. Javascript - Use cierres con moderación?
- 29. Cómo verificar el dispositivo usb con instrucción if en bash
- 30. Usando JQuery para verificar si no se ha marcado ningún botón de opción en un grupo
favor Agregue más detalles para obtener un mejor asesoramiento – ControlAltDel
¿Qué otros detalles podrían ser necesarios? Uso el diseño para la autenticación en mi aplicación, y quiero saber cómo verificar si un usuario está autenticado usando JavaScript. – Solomon
@Solomon: No sé cómo funciona Rails, pero puedes buscar cookies (PHP) o entradas ocultas (ASP.NET) para ver la identificación de la sesión. –