自定义拦截器
/**
*@Description 自定义feign拦截器
*@Author wengzhongjie
*@Date 2021/12/15 10:04
*@Version
*/
public class CustomFeignInterceptor implements RequestInterceptor {
@Override
public void apply(RequestTemplate requestTemplate) {
//写一些自己的逻辑 带上token 什么之类的
System.out.println("执行了自定义拦截器");
}
}
全局配置
@Configuration
public class OpenFeignConfig {
/**
* 自定义feign拦截器
* @return
*/
@Bean
public CustomFeignInterceptor customFeignInterceptor() {
return new CustomFeignInterceptor();
}
}
如果写在配置类中,注入的形式则就是全局的拦截器,因为并没有指定是为具体服务进行配置。
配置文件
feign:
client:
config:
stock-service: #服务名
requestInterceptors:
- com.gaby.cloud.order.interceptor.feign.CustomFeignInterceptor
如果写在配置文件中指明了服务,则为具体的服务指定一个或者多个拦截器