如何实现ssm框架下web端http请求的cookie在server端获取?

版权声明:本文为博主原创文章,转载请注明出处,尊重劳动成果,谢谢~ https://blog.csdn.net/zhanglf02/article/details/86614906

目前在看系统的登陆这块权限校验的逻辑。发现是通过获取cookie并在response的header中返回给浏览器。如何做到的呢?

用到的就是springmvc的拦截器配置。<mvc:interceptor>
1.在spring-servlet.xml中配置登陆的拦截器:LoggingInterceptor
在这里插入图片描述
2.实现登陆拦截器,继承 org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
重写方法:public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception
在这个预处理方法中对登陆进行验证。生成sessinId。并将cookie通过set方法返回给浏览器。

        ControllerContext.set(request, response);
        String strSessionId = UUID.randomUUID().toString().replaceAll("-", "");
        String currentDomain = ControllerContext.getCurrentDomain();
        。。。

3.完成登陆后,页面的下次请求就会出现cookie。其中cookie中的数据结构为map的key=value格式。
在这里插入图片描述

4.配置通用拦截器,实现登录后的f服务端获取cookie
在这里插入图片描述
在这里插入图片描述
5.然后和上一步一样,集成拦截器类,实现对应的preHander方法,在方法中获取对应字段的cookie值
在这里插入图片描述
然后对这个信息进行解密验证即可。

猜你喜欢

转载自blog.csdn.net/zhanglf02/article/details/86614906