diff --git a/web/src/main/java/cn/jlw/Interceptor/LoginInterceptor.java b/web/src/main/java/cn/jlw/Interceptor/LoginInterceptor.java index 15e1c2d0..8e99bf7d 100644 --- a/web/src/main/java/cn/jlw/Interceptor/LoginInterceptor.java +++ b/web/src/main/java/cn/jlw/Interceptor/LoginInterceptor.java @@ -47,6 +47,11 @@ public class LoginInterceptor implements HandlerInterceptor { * 根据基于ThreadLocal中UserDTO是否未空 * 为空拦截,不为空放行 */ + + if (request.getMethod().equalsIgnoreCase("OPTIONS")) { + return true; + } + CoreUser user = UserHolder.getUser(); if (user == null) { throw new RuntimeException("用户未登录"); diff --git a/web/src/main/java/cn/jlw/Interceptor/RedisTokenInterceptor.java b/web/src/main/java/cn/jlw/Interceptor/RedisTokenInterceptor.java index 92a99ccc..866b008b 100644 --- a/web/src/main/java/cn/jlw/Interceptor/RedisTokenInterceptor.java +++ b/web/src/main/java/cn/jlw/Interceptor/RedisTokenInterceptor.java @@ -45,6 +45,14 @@ public class RedisTokenInterceptor implements HandlerInterceptor { * userMap为空则放行,不为空则刷新token,并将userMap转成userDTO,保存到ThreadLocal中 * 放行 */ + + /** + * 本项目中没有,OPTIONS的请求,所以一般都是前端跨域时候的OPTIONS请求,直接放开 + */ + if(request.getMethod().equalsIgnoreCase("OPTIONS")) { + return true; + } + //获取请求头中的token //根据前端的请求来确定Header中的参数 String token = request.getHeader(AUTHORIZATION); diff --git a/web/src/main/java/com/ibeetl/jlw/web/IndexController.java b/web/src/main/java/com/ibeetl/jlw/web/IndexController.java index a0494c86..ed1a2153 100644 --- a/web/src/main/java/com/ibeetl/jlw/web/IndexController.java +++ b/web/src/main/java/com/ibeetl/jlw/web/IndexController.java @@ -927,7 +927,7 @@ public class IndexController { try { //判断是老师还是学生 if(null != student || null != teacher){ -// String token = createSessionByUserId(); + createSessionByUserId(); if(ApplicationRunnerController.isOnline){ String tsUrl = SpringUtil.getBean(Environment.class).getProperty("student.teacher.url"); response.sendRedirect(tsUrl + (tsUrl.endsWith("/") ? "" : "/") + "Home" + roleTagCopy);