解決OpenFeign遠(yuǎn)程調(diào)用返回的對象總是null問題
OpenFeign遠(yuǎn)程調(diào)用返回的對象總是null
OpenFeign在SpringCloud體系中并不少見
遠(yuǎn)程調(diào)用組件嘛,配置也相當(dāng)簡單,添加OpenFeign的依賴
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>在啟動類加上開啟Feign的注解
@EnableDiscoveryClient@EnableFeignClients
以上處理完之后
相當(dāng)于前置條件都已經(jīng)具備了, 但是有些同學(xué)用到了Ribbon或者Hystrix,對應(yīng)的配置文件該怎么配置這里就不做過多的贅述了,接下來我們看一下遠(yuǎn)程調(diào)用接口類怎么寫的

為了保密,value和path的值我置空了,這兩個置空的值其實都是讀取配置文件,做成了動態(tài)配置,但是看似沒問題吧,但是我同事再遠(yuǎn)程調(diào)用的時候,接收的回參總是null,然后排查了小一會,發(fā)現(xiàn)了一個十分可笑的事情
就是這個path參數(shù),一定要以“/”開頭,雖然在請求的時候,OpenFeign會封裝成請求類,會自動給你拼接上“/”,但是如果你的path不以“/”開頭,遠(yuǎn)程調(diào)用的回參一直都會是null
問題不是大問題,主要是我寫的時候有自己的規(guī)范,沒有省略這個“/”,平常開發(fā)也沒注意,也是巧了!
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
教你用Springboot實現(xiàn)攔截器獲取header內(nèi)容
項目中遇到一個需求,對接上游系統(tǒng)是涉及到需要增加請求頭,請求頭的信息是動態(tài)獲取的,需要動態(tài)從下游拿到之后轉(zhuǎn)給上游,文中非常詳細(xì)的介紹了該需求的實現(xiàn),需要的朋友可以參考下2021-05-05
springboot+thymeleaf打包成jar后找不到靜態(tài)資源的坑及解決
這篇文章主要介紹了springboot+thymeleaf打包成jar后找不到靜態(tài)資源的坑及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
Java單表實現(xiàn)評論回復(fù)功能(多種實現(xiàn)方式)
這篇文章主要介紹了Java單表實現(xiàn)評論回復(fù)功能,大家都知道評論功能有多種實現(xiàn)方式,本文逐一給大家詳細(xì)講解,需要的朋友可以參考下2023-03-03
spring/springboot整合curator遇到的坑及解決
這篇文章主要介紹了spring/springboot整合curator遇到的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05
Spring Cloud Alibaba使用Sentinel實現(xiàn)接口限流
這篇文章主要介紹了Spring Cloud Alibaba使用Sentinel實現(xiàn)接口限流,本文詳細(xì)的介紹了Sentinel組件的用法以及接口限流,感興趣的可以了解一下2019-04-04

