码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • feign之间相互通信RequestInterceptor拦截器失效


    1、问题描述

            前段时间碰到一个问题,有两个服务A和服务B,通过feign进行通信。因为feign之间无法直接传递请求头,只能传请求体。因此需要借助RequestInterceptor拦截器获取到请求头。服务B中设置了RequestInterceptor拦截器,但是在A进行feign调用B的时候有时候能触发B的RequestInterceptor拦截器,有时候又没有触发B的RequestInterceptor拦截器。

    2、产生原因

            之所以有时能走到RequestInterceptor这里,有时走不到。这是由于我在启动类上的EnableFeignClients注解扫描的是包 @EnableFeignClients({"com.my.feign"})。 只要换成扫描具体的class就不会有这个问题了@EnableFeignClients(clients = {ProducerApiFeign.class})。       

            分析产生的原因我在FeignClientsRegistrar类里面打了断点,启动的时候看了执行步骤:

            1、启动类使用@EnableFeignClients({"com.my.feign"})

            2、启动类使用@EnableFeignClients(clients = {ProducerApiFeign.class})

    3、解决方法

            把@EnableFeignClients({"com.my.feign"})

    换成

            @EnableFeignClients(clients = {ProducerApiFeign.class})就行了。

    4、参考代码

            为了复现这个问题,我简单写了一个生产者和消费者。

            

            代码:【免费】feign之间相互通信RequestInterceptor拦截器失效相关代码资源-CSDN文库

    项目结构说明:

    MyEureka:

            使用@EnableEurekaServer使其作为eureka服务端。

         

    MyProducer:

            生产者服务

    MyCustomer:

            消费者服务

            

    5、总结

           无

    6、参考资料

    @FeignClient配置 configuration 不生效_feignclient configuration不生效-CSDN博客

    spring boot + feign + eureka报错Load balancer does not have available server for client的可能解决办法_springcloud eureka balancer冲突-CSDN博客

  • 相关阅读:
    用户分析-AARRR模型(海盗模型)
    健身房戴什么耳机比较好、最适合健身运动佩戴的耳机推荐
    idea+docker+jenkins+git构建自动化部署java项目
    “无法为保留分区分配驱动器号”的解决
    kunpeng的aarch64架构cpu、openeuler系统、昇腾服务器适配文档转换功能(doc转docx、ppt转pptx)
    ubuntu配置ffmpeg环境
    抖音小程序开发教学系列(5)- 抖音小程序数据交互
    XUbuntu22.04之解决桌面突然放大,屏幕跟着鼠标移动问题(一百九十)
    什么是分库分表-01
    护眼灯买什么样的好?好用又实惠的护眼台灯推荐
  • 原文地址:https://blog.csdn.net/weixin_42032770/article/details/132800901
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号