Parcourir la source

优化依赖项

yufeng0528 il y a 4 ans
Parent
commit
63e82c5e0f

+ 20 - 10
spring5-auth/spring5-auth-server/pom.xml

@@ -15,29 +15,39 @@
15 15
     </parent>
16 16
     
17 17
 	<dependencies>
18
-	    <!-- 使用redis做数据缓存,如果不需要可不依赖 -->
18
+        <!-- Spring Boot Web Flux 依赖 -->
19 19
         <dependency>
20 20
             <groupId>org.springframework.boot</groupId>
21
-            <artifactId>spring-boot-starter-data-redis</artifactId>
21
+            <artifactId>spring-boot-starter-webflux</artifactId>
22 22
         </dependency>
23
+    
24
+        <!-- Spring Boot 响应式 Redis 依赖 -->
25
+        <dependency>
26
+            <groupId>org.springframework.boot</groupId>
27
+            <artifactId>spring-boot-starter-data-redis-reactive</artifactId>
28
+        </dependency>
29
+        
30
+        <!-- shrio -->
23 31
         <dependency>
24 32
             <groupId>org.apache.shiro</groupId>
25 33
             <artifactId>shiro-spring-boot-web-starter</artifactId>
26 34
             <version>1.4.0</version>
27 35
         </dependency>
36
+        
37
+        <!-- jwt -->
28 38
         <dependency>
29 39
             <groupId>com.auth0</groupId>
30 40
             <artifactId>java-jwt</artifactId>
31 41
             <version>3.2.0</version>
32 42
         </dependency>
33
-        <dependency>
34
-            <groupId>org.apache.httpcomponents</groupId>
35
-            <artifactId>httpclient</artifactId>
36
-            </dependency>
37
-        <dependency>
38
-            <groupId>org.apache.commons</groupId>
39
-            <artifactId>commons-lang3</artifactId>
40
-        </dependency>
43
+<!--         <dependency> -->
44
+<!--             <groupId>org.apache.httpcomponents</groupId> -->
45
+<!--             <artifactId>httpclient</artifactId> -->
46
+<!--             </dependency> -->
47
+<!--         <dependency> -->
48
+<!--             <groupId>org.apache.commons</groupId> -->
49
+<!--             <artifactId>commons-lang3</artifactId> -->
50
+<!--         </dependency> -->
41 51
 		
42 52
 	</dependencies>
43 53
 </project>

+ 2 - 2
spring5-auth/spring5-auth-server/src/main/java/com/yaozhitech/spring5/filter/AnyRolesAuthorizationFilter.java

@@ -6,10 +6,10 @@ import javax.servlet.ServletRequest;
6 6
 import javax.servlet.ServletResponse;
7 7
 import javax.servlet.http.HttpServletResponse;
8 8
 
9
-import org.apache.http.HttpStatus;
10 9
 import org.apache.shiro.subject.Subject;
11 10
 import org.apache.shiro.web.filter.authz.AuthorizationFilter;
12 11
 import org.apache.shiro.web.util.WebUtils;
12
+import org.springframework.http.HttpStatus;
13 13
 
14 14
 public class AnyRolesAuthorizationFilter  extends AuthorizationFilter {
15 15
 	
@@ -36,7 +36,7 @@ public class AnyRolesAuthorizationFilter  extends AuthorizationFilter {
36 36
         HttpServletResponse httpResponse = WebUtils.toHttp(response);
37 37
         httpResponse.setCharacterEncoding("UTF-8");
38 38
         httpResponse.setContentType("application/json;charset=utf-8");
39
-        httpResponse.setStatus(HttpStatus.SC_UNAUTHORIZED);
39
+        httpResponse.setStatus(HttpStatus.UNAUTHORIZED.ordinal());
40 40
         return false;
41 41
     }
42 42
 

+ 9 - 6
spring5-auth/spring5-auth-server/src/main/java/com/yaozhitech/spring5/filter/JwtAuthFilter.java

@@ -10,14 +10,14 @@ import javax.servlet.ServletResponse;
10 10
 import javax.servlet.http.HttpServletRequest;
11 11
 import javax.servlet.http.HttpServletResponse;
12 12
 
13
-import org.apache.commons.lang3.StringUtils;
14
-import org.apache.http.HttpStatus;
15 13
 import org.apache.shiro.authc.AuthenticationException;
16 14
 import org.apache.shiro.authc.AuthenticationToken;
17 15
 import org.apache.shiro.subject.Subject;
18 16
 import org.apache.shiro.web.filter.authc.AuthenticatingFilter;
19 17
 import org.apache.shiro.web.util.WebUtils;
20 18
 import org.springframework.beans.factory.annotation.Value;
19
+import org.springframework.http.HttpStatus;
20
+import org.springframework.util.StringUtils;
21 21
 import org.springframework.web.bind.annotation.RequestMethod;
22 22
 
23 23
 import com.yaozhitech.spring5.dto.UserDto;
@@ -83,7 +83,7 @@ public class JwtAuthFilter extends AuthenticatingFilter {
83 83
     @Override
84 84
     protected AuthenticationToken createToken(ServletRequest servletRequest, ServletResponse servletResponse) {
85 85
         String jwtToken = getAuthzHeader(servletRequest);
86
-        if(StringUtils.isNotBlank(jwtToken)&&!JwtUtils.isTokenExpired(jwtToken))
86
+        if(!StringUtils.isEmpty(jwtToken)&&!JwtUtils.isTokenExpired(jwtToken))
87 87
             return new JWTToken(jwtToken);
88 88
 
89 89
         return null;
@@ -94,7 +94,7 @@ public class JwtAuthFilter extends AuthenticatingFilter {
94 94
         HttpServletResponse httpResponse = WebUtils.toHttp(servletResponse);
95 95
         httpResponse.setCharacterEncoding("UTF-8");
96 96
         httpResponse.setContentType("application/json;charset=UTF-8");
97
-        httpResponse.setStatus(HttpStatus.SC_NON_AUTHORITATIVE_INFORMATION);
97
+        httpResponse.setStatus(HttpStatus.UNAUTHORIZED.ordinal());
98 98
         fillCorsHeader(WebUtils.toHttp(servletRequest), httpResponse);
99 99
         return false;
100 100
     }
@@ -114,7 +114,7 @@ public class JwtAuthFilter extends AuthenticatingFilter {
114 114
                 newToken = userService.generateJwtToken(user.getUsername());
115 115
             }
116 116
         }
117
-        if(StringUtils.isNotBlank(newToken))
117
+        if(!StringUtils.isEmpty(newToken))
118 118
             httpResponse.setHeader("x-auth-token", newToken);
119 119
 
120 120
         return true;
@@ -129,7 +129,10 @@ public class JwtAuthFilter extends AuthenticatingFilter {
129 129
     protected String getAuthzHeader(ServletRequest request) {
130 130
         HttpServletRequest httpRequest = WebUtils.toHttp(request);
131 131
         String header = httpRequest.getHeader("x-auth-token");
132
-        return StringUtils.removeStart(header, "Bearer ");
132
+        if (StringUtils.startsWithIgnoreCase(header, "Bearer ")) {
133
+			return StringUtils.replace(header, "Bearer ", "");
134
+		}
135
+        return header;
133 136
     }
134 137
 
135 138
     protected boolean shouldTokenRefresh(Date issueAt){