| package com.dsh.other.util; | 
|   | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.stereotype.Component; | 
| import org.springframework.web.context.request.RequestContextHolder; | 
| import org.springframework.web.context.request.ServletRequestAttributes; | 
|   | 
| import javax.servlet.http.HttpServletRequest; | 
|   | 
| @Component | 
| public class TokenUtil { | 
|   | 
|     @Autowired | 
|     private RedisUtil redisUtil; | 
|   | 
|   | 
|     public Integer getUserIdFormRedis() throws Exception { | 
|         ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); | 
|         HttpServletRequest request = servletRequestAttributes.getRequest(); | 
|         String requestHeader = request.getHeader("Authorization"); | 
|         if (requestHeader != null && requestHeader.startsWith("Bearer ")) { | 
|             requestHeader = requestHeader.substring(requestHeader.indexOf(" ") + 1); | 
|             String key = null; | 
|             int length = requestHeader.length(); | 
|             if (length > 32) { | 
|                 key = requestHeader.substring(length - 32); | 
|             } else { | 
|                 key = requestHeader; | 
|             } | 
|             String value = redisUtil.getValue(key); | 
|             return null != value ? Integer.valueOf(value) : null; | 
|         } else { | 
|             return null; | 
|         } | 
|     } | 
| } |