我是ajax的新手,我知道有人会遇到这个问题。 我有一个构建在Spring MVC上的传统应用程序,它有一个拦截器(过滤器),用于在没有会话时将用户重定向到登录页面 页面。在Ajax jquery调用上重定向
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登录的-Markup的页面 - 我查了我的萤火虫,有一个302的价值
$(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);
}
});
});
HTTP响应,但我在这里我不知道如何捕捉到的响应和用户重定向到登录 页面。任何想法?谢谢。
嗨moonground ..谢谢,我想我已经得到你的观点已经给出这个例子...非常感谢你... – 2010-05-31 01:18:45
谢谢托马斯。我有点得到它,但我会读更多的参考线程,所以它可以沉入一点。尽管如此,它似乎是我正在寻找的答案,所以非常感谢! – Mark 2012-11-01 16:47:23
如何将重定向变量添加到响应中? – nikli 2015-06-08 06:31:04