欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Spring Cloud】Spring Cloud Feign 携带 Token

程序员文章站 2024-03-20 23:11:10
...

在 Spring Cloud 微服务架构体系中,通常使用 Feign 作为服务之间的通信组件,但是在某些场景下我们对某个服务做了权限拦截,例如 Shiro 或者 Spring Security,往往需要验证 token

使用 Feign 如何解决 token 的问题呢?

可以先获取原 token,重新转发 token

@Configuration
public class FeignConfig implements RequestInterceptor {
    @Override
    public void apply(RequestTemplate requestTemplate) {
        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
        HttpServletRequest request = attributes.getRequest();
        requestTemplate.header("X-Access-Token", request.getHeader("X-Access-Token"));
    }
}

s

相关标签: Spring Cloud shiro