Browse Source

fix: 问题修改

JieZ 2 years ago
parent
commit
7f82fbe8bf

+ 4 - 1
bpm-server/src/main/java/com/srm/bpmserver/logic/impl/LoginUserHolderImpl.java

@@ -18,6 +18,7 @@ import org.springframework.web.context.request.ServletRequestAttributes;
18
 
18
 
19
 import java.util.Collections;
19
 import java.util.Collections;
20
 import java.util.List;
20
 import java.util.List;
21
+import java.util.Objects;
21
 import java.util.Set;
22
 import java.util.Set;
22
 import java.util.stream.Collectors;
23
 import java.util.stream.Collectors;
23
 
24
 
@@ -58,7 +59,9 @@ public class LoginUserHolderImpl implements LoginUserHolder {
58
         final String requestHeader = request.getHeader(UserAuthConstant.TOKEN_HEADER_NAME);
59
         final String requestHeader = request.getHeader(UserAuthConstant.TOKEN_HEADER_NAME);
59
         String userId;
60
         String userId;
60
         //需要区分一下,如果用户消息头中是 ·bearer · 开头需要从redis取用户,如果不是说明直接是用户id
61
         //需要区分一下,如果用户消息头中是 ·bearer · 开头需要从redis取用户,如果不是说明直接是用户id
61
-        if (requestHeader.startsWith(UserAuthConstant.TOKEN_HEADER_PREFIX)) {
62
+        if (Objects.isNull(requestHeader)) {
63
+            userId = "";
64
+        } else if (requestHeader.startsWith(UserAuthConstant.TOKEN_HEADER_PREFIX)) {
62
             final String header = requestHeader.replace(UserAuthConstant.TOKEN_HEADER_PREFIX, "");
65
             final String header = requestHeader.replace(UserAuthConstant.TOKEN_HEADER_PREFIX, "");
63
             userId = (String) redisTemplate.opsForValue().get(header);
66
             userId = (String) redisTemplate.opsForValue().get(header);
64
         } else {
67
         } else {