|
@@ -1,65 +0,0 @@
|
|
|
-package com.uas.eis.core.support;
|
|
|
|
|
-
|
|
|
|
|
-import com.uas.eis.entity.ErrorMessage;
|
|
|
|
|
-import com.uas.eis.exception.ApiSystemException;
|
|
|
|
|
-import com.uas.eis.sdk.entity.ApiResult;
|
|
|
|
|
-import com.uas.eis.service.UserService;
|
|
|
|
|
-import io.jsonwebtoken.Claims;
|
|
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
-import org.springframework.web.servlet.HandlerInterceptor;
|
|
|
|
|
-import org.springframework.web.servlet.ModelAndView;
|
|
|
|
|
-
|
|
|
|
|
-import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
-import java.util.Date;
|
|
|
|
|
-
|
|
|
|
|
-public class InterceptorConfig implements HandlerInterceptor {
|
|
|
|
|
-
|
|
|
|
|
- @Autowired
|
|
|
|
|
- private UserService userService;
|
|
|
|
|
-
|
|
|
|
|
- private final static String header = "Authorization";
|
|
|
|
|
-
|
|
|
|
|
- public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
|
|
|
|
- //token认证
|
|
|
|
|
- String token = request.getHeader(header);
|
|
|
|
|
- boolean flag = false;
|
|
|
|
|
- if(token != null && !token.trim().isEmpty()) { // 验证是否包含token
|
|
|
|
|
- Claims claims = TokenHandler.parseToken(token);
|
|
|
|
|
- if(claims != null && checkToken(claims)) { // 验证token信息是否合法
|
|
|
|
|
- String username = (String) claims.get("username");
|
|
|
|
|
- String password = (String) claims.get("password");
|
|
|
|
|
- userService.checkUser(username, password);
|
|
|
|
|
- flag = true;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- if(!flag){
|
|
|
|
|
- ApiResult apiResult = new ApiResult();
|
|
|
|
|
- apiResult.setCode(ErrorMessage.TOKEN_ILLEGAL.getCode());
|
|
|
|
|
- apiResult.setMessage(ErrorMessage.TOKEN_ILLEGAL.getMessage());
|
|
|
|
|
- apiResult.setRequestId(null);
|
|
|
|
|
- throw new ApiSystemException(apiResult);
|
|
|
|
|
- }
|
|
|
|
|
- return flag;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
|
|
|
|
|
- ModelAndView modelAndView) throws Exception {
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
|
|
|
|
|
- Exception ex) throws Exception {
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- private boolean checkToken(Claims claims) {
|
|
|
|
|
- Date now = new Date();
|
|
|
|
|
- Date start = claims.getNotBefore();
|
|
|
|
|
- Date end = claims.getExpiration();
|
|
|
|
|
-
|
|
|
|
|
- boolean flag = false;
|
|
|
|
|
- if (now.after(start) && now.before(end)) {
|
|
|
|
|
- flag = true;
|
|
|
|
|
- }
|
|
|
|
|
- return flag;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|