zoukankan      html  css  js  c++  java
  • & 设置Feign的Header信息

    设置Feign的Header信息

    两种方式

    1.在方法参数前面添加@RequestHeader注解

    @PostMapping(value = "/getStuDetail")
    public ReturnInfo getStudentDetail(@RequestBody Map map,@RequestHeader(name = "id") String id);
    

    使用@RequestHeader(name = "id")可以传递动态header属性

    2.实现RequestInterceptor接口,设置Header(所有Feign请求)

    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.context.request.RequestContextHolder;
    import org.springframework.web.context.request.ServletRequestAttributes;
    import feign.RequestInterceptor;
    import feign.RequestTemplate;
    
    @Configuration
    public class FeignConfiguration implements RequestInterceptor {   
          @Override    
          public void apply(RequestTemplate template) {       
                ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();       
                HttpServletRequest request = attributes.getRequest();        
                Enumeration<String> headerNames = request.getHeaderNames();       
                if (headerNames != null) {           
                      while (headerNames.hasMoreElements()) {            
                            String name = headerNames.nextElement();             
                            String values = request.getHeader(name);            
                            template.header(name, values);            
                      }            
                }   
          }
    }
    //configuration = FeignConfiguration.class===================
    @Component@FeignClient(value = "xxxxxxxxx",fallback = XxxxxServiceHystric.class ,configuration = FeignConfiguration.class)
    public interface XxxxxService {
    }
    
  • 相关阅读:
    保持同步
    将Cent0S 7的网卡名称eno16777736改为eth0
    Linux系统各发行版镜像下载(2)
    Linux系统各发行版镜像下载
    ~/.ssh目录找不到解决方法
    克隆后虚拟机网络配置
    新建的linux虚拟机找不到eth0解决办法
    SecureCRT 7 注册码
    linux运维常用命令
    shell脚本实例(2)
  • 原文地址:https://www.cnblogs.com/doagain/p/11087925.html
Copyright © 2011-2022 走看看