diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/auth/LoginFilter.java b/src/main/java/com/chaozhanggui/system/cashierservice/auth/LoginFilter.java index a9305dc..ab31241 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/auth/LoginFilter.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/auth/LoginFilter.java @@ -122,6 +122,15 @@ public class LoginFilter implements Filter { response.getWriter().flush();//流里边的缓存刷出 return; } + JSONObject jsonObject1 = TokenUtil.parseParamFromToken(token); + if (jsonObject1.containsKey("status")){ + Result result = new Result(CodeEnum.TOKEN_EXPIRED); + String jsonString = JSONObject.toJSONString(result); + JSONObject jsonObject = JSONObject.parseObject(jsonString, JSONObject.class); + response.getWriter().print(jsonObject); + response.getWriter().flush();//流里边的缓存刷出 + return; + } chain.doFilter(req, resp); } diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/util/TokenUtil.java b/src/main/java/com/chaozhanggui/system/cashierservice/util/TokenUtil.java index 2450d3c..16f3bdc 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/util/TokenUtil.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/util/TokenUtil.java @@ -7,6 +7,7 @@ import io.jsonwebtoken.Claims; import io.jsonwebtoken.JwtBuilder; import io.jsonwebtoken.Jwts; import io.jsonwebtoken.SignatureAlgorithm; +import lombok.extern.slf4j.Slf4j; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -18,6 +19,7 @@ import java.util.Map; * @author admin * @date 2020/8/6 13:04 */ +@Slf4j public class TokenUtil { /** @@ -51,8 +53,8 @@ public class TokenUtil { } public static String generateJfToken(String openId,String userSign) throws Exception { Map claims = new HashMap<>(1); - claims.put("openId",openId); - claims.put("userSign",userSign); + claims.put("openId",openId); + claims.put("userSign",userSign); @@ -66,7 +68,7 @@ public class TokenUtil { private static String generateToken(Map claims) throws Exception { return Jwts.builder() .setClaims(claims) - .setExpiration(new Date(System.currentTimeMillis()+EXPIRE_DATE)) +// .setExpiration(new Date(System.currentTimeMillis()+EXPIRE_DATE)) .setIssuedAt(new Date()) .signWith(SignatureAlgorithm.HS256,TOKEN_SECRET) .compact(); @@ -106,20 +108,27 @@ public class TokenUtil { * @return 用户Id */ public static JSONObject parseParamFromToken(final String token) { - Claims claims = Jwts.parser() - .setSigningKey(TOKEN_SECRET) - .parseClaimsJws(token) - .getBody(); - JSONObject jsonObject = (JSONObject) JSONObject.toJSON(claims); + JSONObject jsonObject=new JSONObject(); + try{ + Claims claims = Jwts.parser() + .setSigningKey(TOKEN_SECRET) + .parseClaimsJws(token) + .getBody(); + jsonObject = (JSONObject) JSONObject.toJSON(claims); + }catch (Exception e){ + jsonObject.put("status","-4"); + log.info("token解析失败{}",e.getMessage()); + e.printStackTrace(); + } return jsonObject; } - public static void main(String[] args){ - System.out.println(refreshToken("eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE1OTY4Nzc5MjEsInN1YiI6ImRkZGRkIiwiaWF0IjoxNTk2Njk3OTIxfQ.lrg3KF9h9izbmyD2q5onqnZIKBqanWy9xCcroFpjxPKmJz6kz27G9lVlFpVanrL1I4SFf3Dz3q3Xu01DX2T_dw")); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - Calendar cld = Calendar.getInstance(); - cld.setTime(new Date()); - cld.set(Calendar.DATE, cld.get(Calendar.DATE)-1); - System.out.println(sdf.format(cld.getTime())); - } +// public static void main(String[] args){ +// System.out.println(refreshToken("eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE1OTY4Nzc5MjEsInN1YiI6ImRkZGRkIiwiaWF0IjoxNTk2Njk3OTIxfQ.lrg3KF9h9izbmyD2q5onqnZIKBqanWy9xCcroFpjxPKmJz6kz27G9lVlFpVanrL1I4SFf3Dz3q3Xu01DX2T_dw")); +// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); +// Calendar cld = Calendar.getInstance(); +// cld.setTime(new Date()); +// cld.set(Calendar.DATE, cld.get(Calendar.DATE)-1); +// System.out.println(sdf.format(cld.getTime())); +// } }