zoukankan      html  css  js  c++  java
  • Feign解决服务之间调用传递token

     在单体服务中调用一个接口时需要在Head里加token直接放在head里就行了,Feign之间调用服务需要加token怎么办呢,解决办法实现RequestInterceptor接口。

    1、在调用服务中新建FeignConfig类并实现RequestInterceptor接口,重写apply方法。

    public class FeignConfig implements RequestInterceptor {
            @Override
            public void apply(RequestTemplate requestTemplate) {
                ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
                HttpServletRequest request = attributes.getRequest();
                //添加token
                requestTemplate.header("Token", request.getHeader("Token"));
            }
        }

    2、调用方法

       

    @FeignClient(name = "被调用服务名")
        public interface UaaClient {
            @RequestMapping(value = "被调用服务中方法名")
            String test();
        }

    这样就可以实现Feign调用服务之间Token共享了。

  • 相关阅读:
    洛谷P2334
    线性基
    6.28 模拟赛解题报告
    左偏树
    哈夫曼树 Huffman
    CSP/NOIP 之前还需要学/复习的东西
    CF718C
    6.13 模拟赛结题报告
    关于模拟退火
    『笔记』网络流
  • 原文地址:https://www.cnblogs.com/wangdahui/p/11971372.html
Copyright © 2011-2022 走看看