|
@@ -10,6 +10,7 @@ import org.springframework.stereotype.Component;
|
|
|
import org.springframework.web.server.ServerWebExchange;
|
|
|
import org.springframework.web.server.WebFilter;
|
|
|
import org.springframework.web.server.WebFilterChain;
|
|
|
+import org.springframework.web.server.WebSession;
|
|
|
import reactor.core.publisher.Mono;
|
|
|
|
|
|
/**
|
|
@@ -25,9 +26,11 @@ public class GateWayFilter implements WebFilter {
|
|
|
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
|
|
|
//请求头添加uuid
|
|
|
String uuid = UUidUtil.getUUid();
|
|
|
- ServerHttpRequest request = exchange.getRequest().mutate().header(AuthConstant.UUID,uuid).build();
|
|
|
+ String sessionId = exchange.getSession().block().getId();
|
|
|
+ ServerHttpRequest request = exchange.getRequest().mutate().header(AuthConstant.UUID,uuid)
|
|
|
+ .header(AuthConstant.SESSION_ID,sessionId).build();
|
|
|
exchange = exchange.mutate().request(request).build();
|
|
|
- redisService.set(AuthConstant.UUID,uuid);
|
|
|
+ redisService.set(AuthConstant.UUID+":"+sessionId,uuid,5);
|
|
|
return chain.filter(exchange);
|
|
|
}
|
|
|
}
|