美文网首页
微服务之间用Feign调用接口 传header

微服务之间用Feign调用接口 传header

作者: 老魏313 | 来源:发表于2018-07-23 16:54 被阅读0次

    基于 Feign 调用外网的服务
    @FeignClient(value = "ace-auth" , url = "110.120.70.90:9777")

    feign 之间传递 header 在工程中只需添加一个类文件, 注入到spring容器中

    import feign.RequestInterceptor;
    import feign.RequestTemplate;
    import org.springframework.stereotype.Component;
    import org.springframework.web.context.request.RequestContextHolder;
    import org.springframework.web.context.request.ServletRequestAttributes;
    import javax.servlet.http.HttpServletRequest;
    import java.util.Enumeration;
    @Component
    public class SecuringRequestInterceptor implements RequestInterceptor {
        @Override
        public void apply(RequestTemplate requestTemplate) {
            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);
                    requestTemplate.header(name, values);
                }
            }
        }
    }
    

    相关文章

      网友评论

          本文标题:微服务之间用Feign调用接口 传header

          本文链接:https://www.haomeiwen.com/subject/bbpjmftx.html