From aa1797e1bc9f882856f42197916399dd45a9cdfe Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期日, 09 十月 2022 15:33:45 +0800
Subject: [PATCH] 处理权限
---
flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java | 55 ++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 36 insertions(+), 19 deletions(-)
diff --git a/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java b/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java
index 50ef112..aa5957d 100644
--- a/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java
+++ b/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java
@@ -15,10 +15,6 @@
import javax.servlet.http.HttpServletResponse;
import java.lang.reflect.Method;
import java.nio.charset.StandardCharsets;
-import java.text.SimpleDateFormat;
-import java.time.ZoneId;
-import java.util.Calendar;
-import java.util.Date;
/**
* 自定义拦截器,判断此次请求是否有权限
@@ -30,7 +26,6 @@
public class AuthorizationInterceptor extends HandlerInterceptorAdapter {
@Autowired
private TokenManager manager;
-
@Autowired
com.dg.core.service.ISysUserService IUserService;
@@ -48,23 +43,45 @@
//从header中得到token
String token = request.getHeader(Constant.AUTHORIZATION);
- if (manager.checkToken(token)) {
- //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入
- request.setAttribute(Constant.CURRENT_USER_ID, manager.getUserId(token));
- SysUser ss = IUserService.selectData(manager.getUserId(token)+"");
+ //花城token
+ String HCtoken = request.getHeader(Constant.HCAUTHORIZATION);
- return true;
+ if(StringUtils.isEmpty(token))
+ {
+ //花城e+ token
+ if (manager.checkHCToken(HCtoken)) {
+ //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入
+ request.setAttribute(Constant.CURRENT_USER_ID, manager.getHCUserId(HCtoken));
+ System.out.println("花城用户id:"+manager.getHCUserId(HCtoken));
+// SysUser ss = IUserService.selectData(manager.getHCUserId(HCtoken)+"");
+ return true;
+ }
+
+ }
+ else
+ {
+ if (manager.checkToken(token)) {
+ //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入
+ request.setAttribute(Constant.CURRENT_USER_ID, manager.getUserId(token));
+// SysUser ss = IUserService.selectData(manager.getUserId(token)+"");
+ return true;
+ }
}
- //如果验证token失败,并且方法或类注明了Authorization,返回401错误
- if (method.getAnnotation(Authorization.class) != null || bean.getClass().getAnnotation(Authorization.class) != null) {
- String reponse = "{\"result\": 449, \"message\": \"Overdue token\"}";
- response.setStatus(200);
- response.setCharacterEncoding(StandardCharsets.UTF_8.toString());
- ResponseFacade facade = (ResponseFacade) response;
- facade.setContentLength(reponse.getBytes(StandardCharsets.UTF_8).length);
- facade.getWriter().write(reponse);
- return false;
+ if(!StringUtils.isEmpty(token))
+ {
+ //如果验证token失败,并且方法或类注明了Authorization,返回401错误
+ if (method.getAnnotation(Authorization.class) != null ||
+ bean.getClass().getAnnotation(Authorization.class) != null)
+ {
+ String reponse = "{\"result\": 449, \"message\": \"Overdue token\"}";
+ response.setStatus(200);
+ response.setCharacterEncoding(StandardCharsets.UTF_8.toString());
+ ResponseFacade facade = (ResponseFacade) response;
+ facade.setContentLength(reponse.getBytes(StandardCharsets.UTF_8).length);
+ facade.getWriter().write(reponse);
+ return false;
+ }
}
return true;
}
--
Gitblit v1.7.1