springboot使用nacos配置中心后,在GlobalFilter中无法使用@Value从nacos获取配置信息
使用@NacosValue也不行。初步怀疑是启动加载顺序的问题,各位有遇到此问题没?
@Slf4j
@RefreshScope
@Component
public class AuthGlobalFilter implements GlobalFilter, Ordered {
/**
* 不足以下时间将自动续期
*/
@NacosValue(value = "${login.token.shortages}", autoRefreshed = true)
private Long duration;
@Resource
private ConfigurableApplicationContext configurableApplicationContext;
@Override
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
String durationStr = configurableApplicationContext.getEnvironment().getProperty("${login.token.shortages}");
log.info("durationStr:" + durationStr); //为空,取不到值
log.info("duration:"+duration); //为空,取不到值
return chain.filter(exchange);
}
}
基本不会,如果能提供demo的话,可以看看

