feat: 优化token逻辑,ParsedToken增加应用到httpHeader功能.

This commit is contained in:
zhouhao
2024-01-15 10:30:15 +08:00
parent 274c2f7a6c
commit 1dfa6e5c07
5 changed files with 41 additions and 9 deletions

View File

@@ -15,7 +15,7 @@ public class BearerTokenParser implements ReactiveUserTokenParser {
.getFirst(HttpHeaders.AUTHORIZATION);
if (token != null && token.startsWith("Bearer ")) {
return Mono.just(ParsedToken.of("bearer", token.substring(7)));
return Mono.just(ParsedToken.ofBearer(token.substring(7)));
}
return Mono.empty();
}

View File

@@ -19,8 +19,11 @@ public class DefaultUserTokenGenPar implements ReactiveUserTokenGenerator, React
private long timeout = TimeUnit.MINUTES.toMillis(30);
@SuppressWarnings("all")
private String headerName = "X-Access-Token";
private String parameterName = ":X_Access_Token";
@Override
public String getTokenType() {
return "default";
@@ -58,10 +61,10 @@ public class DefaultUserTokenGenPar implements ReactiveUserTokenGenerator, React
String token = Optional.ofNullable(exchange.getRequest()
.getHeaders()
.getFirst(headerName))
.orElseGet(() -> exchange.getRequest().getQueryParams().getFirst(":X_Access_Token"));
.orElseGet(() -> exchange.getRequest().getQueryParams().getFirst(parameterName));
if (token == null) {
return Mono.empty();
}
return Mono.just(ParsedToken.of(getTokenType(),token));
return Mono.just(ParsedToken.of(getTokenType(),token,(_header,_token)->_header.set(headerName,_token)));
}
}