实现对未登录用户进行相关操作的拦截

本文介绍了如何实现在用户观看视频等特定操作时进行登录拦截。通过拦截器判断用户是否登录,如果已登录则放行,未登录则重定向至登录页面。在登录成功后,若session中保存了原始URL,则用户会继续之前的操作;否则,跳转至首页。
摘要由CSDN通过智能技术生成

简单说下实现思路:一般都是在一些播放视频或者购买商品的情况下需要用户登录,我做的是在用户播放视频的时候要求用户登录,判断用户是否是会员,因为有的视频是只有会员能看的,所以需要在拦截器里面实现.在拦截器里面判断用户是否登陆,也就是session里面是否存在用户的信息,如果存在说明已经登录那么放行,如果没有登录那么重定向到登陆页面.

需要考虑的问题就是如果用户是要看视频的时候进行登录那么在登录成功之后也要让用户继续进行之前的操作.所以在拦截器还需要获取用户访问的url 并且将这个url存进session,

在登录的时候判断如果这个session的信息是空的那么登录成功之后跳转的就是首页,如果不是空的那么获取到session中存储的的url,继续跳转到这个url.

拦截器中简单实现代码

 public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
       HttpSession session = request.getSession();
	   Object user = session.getAttribute("users");
	   //获取请求的url
	   String requestURI = request.getRequestURI();
	   session.setAttribute("url", requestURI);
	   //s设置session的过期时间
	   session.setMaxInactiveInterval(20*30);
	   
	   if(user!=null&&user!=
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值