Estoy usando spring-security y jQuery en mi aplicación. La página principal usa cargar contenido dinámicamente en pestañas a través de Ajax. Y todo está bien, sin embargo, algunas veces tengo la página de inicio de sesión dentro de mi pestaña y si escribo las credenciales, seré redirigido a la página de contenido sin pestañas.¿Cómo manejar la sesión expirada utilizando spring-security y jQuery?
Así que me gustaría manejar esta situación. Sé que algunas personas usan la autenticación ajax, pero no estoy seguro de que sea adecuada para mí porque me parece bastante complicado y mi aplicación no permite ningún acceso sin iniciar sesión antes. Me gustaría simplemente escribir un controlador global para todas las respuestas ajax que harán window.location.reload()
si necesitamos autenticarnos. Creo que en este caso es mejor obtener el error 401
en lugar del formulario de inicio de sesión estándar porque es más fácil de manejar.
Así,
1) ¿Es posible escribir controlador de errores global para todas las peticiones Ajax jQuery?
2) ¿Cómo puedo personalizar el comportamiento de spring-security para enviar un error 401 para las solicitudes ajax pero para las solicitudes regulares para mostrar la página de inicio de sesión estándar como de costumbre?
3) ¿Puede ser que tenga una solución más elegante? Por favor, comparta.
Gracias.
Ha pasado un tiempo desde que lo solicitó. ¿Has encontrado una buena solución tú mismo? –
Recientemente escribí una publicación de blog sobre este tema: http://www.to-string.com/2012/08/03/springsecurity-authenticating-authorizing-ajax-requests/ – craftsman
Me gusta la solución de @craftsman. Incluso lo simplifiqué (al menos eso creo). Ver http://gedrox.blogspot.com/2013/03/blog-post.html. – Gedrox