

服务A 获取到Token值后,要传递给 服务B进行校验 。
在微服务架构下如何实现呢?
artisan-feign-api 子模块 增加 拦截器
import feign.RequestInterceptor;
import feign.RequestTemplate;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
/**
* @author 小工匠
* @version 1.0
* @description: TODO
* @date 2022/2/4 0:52
* @mark: show me the code , change the world
*/
public class ArtisanRequestInterceptor implements RequestInterceptor {
@Override
public void apply(RequestTemplate requestTemplate) {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest();
requestTemplate.header("token", request.getHeader("token"));
}
}然后实例化


因为是从header中获取参数 ,所以
@RequestHeader("token") String token服务提供者 artisan-cloud-feign-product

artisan-cloud-feign-order 写个测试接口,测测吧


观察下OORDER的日志
