Soy novato de ajax aquí y sé que alguien ya habría encontrado este problema. Tengo una aplicación heredada desarrollada en Spring MVC, tiene un interceptor (filtro) que redirige al usuario a la página de inicio de sesión cuando no hay sesión.Redirigir en Ajax Jquery Llamar
public class SessionCheckerInterceptor extends HandlerInterceptorAdapter {
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
HttpSession session = request.getSession();
// check if userInfo exist in session
User user = (User) session.getAttribute("user");
if (user == null) {
response.sendRedirect("login.htm");
return false;
}
return true;
}
}
Por petición no xmlhttp, esto funciona bien .. pero cuando trato de usar Ajax en mi solicitud, todo se vuelve extraño, no es capaz de redirigir a la página de inicio de sesión correctamente. como comprobar el valor de la
xhr.status = 200 = textStatus parseError errorThrown = "no válida JSON -Markup de mi HTML sesión Page-
$(document).ready(function(){
jQuery.ajax({
type: "GET",
url: "populateData.htm",
dataType:"json",
data:"userId=SampleUser",
success:function(response){
//code here
},
error: function(xhr, textStatus, errorThrown) {
alert('Error! Status = ' + xhr.status);
}
});
});
he comprobado en mi incendiario que hay un 302 HTTP respuesta, pero no estoy seguro de cómo atrapar la respuesta y redirigir al usuario a la página de inicio de sesión . Cualquier idea aquí? Gracias.
Hola moonground ... Gracias, creo que ya entendí tu punto, dado este ejemplo ... Muchas gracias ... –
Gracias Thomas. Lo consigo un poco, pero voy a leer el hilo de referencia un poco más para que se hunda un poco. No obstante, parece ser la respuesta que estoy buscando, ¡así que gracias un millón por eso! – Mark
¿Cómo puedo agregar una variable de redirección a la respuesta? – nikli