OpenFeign 拦截器
作用:远程调用微服务,添加拦截器,一般对请求头进行处理
一、分类
1、请求拦截器
2、响应拦截器
二、请求拦截器使用
1、创建拦截器类
interceptor.TokenRequestInterceptor.class
2、实现请求拦截器接口
implements RequestInterceptor
3、注入,添加组件
@Component
4、通过requestTemplate实现
5、案例
package com.wt.order.interceptor; import feign.RequestInterceptor; import feign.RequestTemplate; import org.springframework.stereotype.Component; import java.util.UUID; @Component public class TokenRequestInterceptor implements RequestInterceptor { @Override public void apply(RequestTemplate requestTemplate) { requestTemplate.header("token", UUID.randomUUID().toString()); } }
三、拦截器作用范围
1、全局
拦截类添加 @Component组件
2、局部
feign yaml文件,添加 request-interceptors ,拦截器单独作用在 services-product微服务
spring: cloud: openfeign: client: config: default: logger-level: full connect-timeout: 100000 read-timeout: 600000 services-product: # 微服务名称 connect-timeout: 1000 # 单位毫秒 read-timeout: 5000 request-interceptors: - com.wt.order.interceptor.TokenRequestInterceptor # 单独