Я новичок в ajax и знаю, что кто-то уже сталкивался с этой проблемой.
У меня есть старое приложение, построенное на Spring MVC, оно имеет перехватчик (фильтр), который перенаправляет пользователя на вход
страницу, когда нет сеанса.
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;
}
}
Для запросов не xmlhttp это работает нормально ... но когда я пытаюсь использовать ajax в моем приложении, все становится странным,
он не может правильно перенаправить на страницу входа.
Как проверить значение
xhr.status = 200 textStatus = parseError errorThrown = "Недопустимый JSON -Маркет моей страницы входа в HTML-
$(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);
}
});
});
Я проверил на своем firebug, что есть HTTP-ответ 302, но я не уверен, как перехватить ответ и перенаправить пользователя к логину
стр. Есть идеи? Спасибо.