我试图在一个定制的spring云网关过滤器中检索一个主体的名称作为一个字符串,这样我就可以将这个字符串传递给我的服务类,以便在返回到过滤器链之前执行一些逻辑。
我遇到了下面的全局过滤器示例,其中他们正在检查主体的名称,但无法找出如何将主体的名称改为字符串?
@Bean
public GlobalFilter customGlobalFilter() {
return (exchange, chain) -> exchange.getPrincipal()
.map(Principal::getName)
.defaultIfEmpty("Default User")
.map(userName -> {
//adds header to proxied request
exchange.getRequest().mutate().header("CUSTOM-REQUEST-HEADER", userName).build();
return exchange;
})
.flatMap(chain::filter);
}
暂无答案!
目前还没有任何答案,快来回答吧!