在使用 Spring Boot 整合 Feign 时,尝试实现 FeignRequestInterceptor 拦截器,在测试中发现一次请求拦截器的 'apply' 方法执行了两次,其中有打印日志的逻辑,打印出了相同的请求信息(包括 url,header 等),且在无 body 的 GET 请求中也出现了该情况,看起来不像是 OPTIONS 请求引起的,还有什么其他因素可能导致多次拦截吗?

可能是因为 Feign 在发送请求时会先发起一次 OPTIONS 请求,该请求与实际请求的信息相同,因此会触发两次拦截器执行。您可以在拦截器中判断请求方法是否为 'OPTIONS',来避免重复执行拦截器逻辑。

另外,如果您使用了 Feign 的 Hystrix 支持,也可能会导致拦截器执行多次的情况。

Spring Boot Feign 拦截器多次执行问题分析

原文地址: https://www.cveoy.top/t/topic/mk06 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录