AJax技术

AJAX 请求时,SpringMVC 拦截器无法获得 session 中的值

字号+ 作者:H5之家 来源:H5之家 2017-06-15 10:01 我要评论( )

Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台(即 JavaSE, J

拦截器代码(想实现的功能就是如果当前 Session 中有 user,那么就可以访问页面和使用 AJAX 请求):

public class UserLoginInterceptor extends HandlerInterceptorAdapter { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HttpSession session = request.getSession(); if (session.getAttribute("user") != null) { return true; } request.getRequestDispatcher("/WEB-INF/views/page/user/login.jsp").forward(request, response); return false; } }

该拦截器拦截了所有的方法(/**),对于返回 ModelAndView 的控制器方法对应的路径,拦截器可以正常获得 session 的值;但是对于 AJAX 访问的控制器方法(被 @ResponseBody 注解的方法)对应的路径,拦截器却无法获得 session 的值。请问这是什么原因呢,解决办法是什么?

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 学习JavaScript设计模式之状态模式

    学习JavaScript设计模式之状态模式

    2017-06-14 18:00

  • 一道 JavaScript 填空题

    一道 JavaScript 填空题

    2017-06-11 11:05

  • Ajax 浏览器支持

    Ajax 浏览器支持

    2017-06-11 11:00

  • ajax-cross-domain

    ajax-cross-domain

    2017-06-10 15:01

网友点评