springcloud使用feign調(diào)用服務(wù)時(shí)參數(shù)內(nèi)容過大問題
feign調(diào)用服務(wù)時(shí)參數(shù)內(nèi)容過大
場景
前端參數(shù)傳入到gateway后,gateway使用feign調(diào)用服務(wù)時(shí),傳入的參數(shù)內(nèi)容過大(參數(shù)常見于富文本、或者其他附屬信息過多)會(huì)導(dǎo)致傳輸不過去,雖然配置可以調(diào)節(jié)內(nèi)容大小,但是最大的也有上限,所以特殊處理一道。
例如該類參數(shù):
解決方法
可新增兩個(gè)redis公共方法,后續(xù)出現(xiàn)的都可以共用
1、設(shè)置緩存參數(shù):
對(duì)于請(qǐng)求參數(shù)數(shù)量不多,但是某些請(qǐng)求參數(shù)過大的場景,臨時(shí)將參數(shù)body緩存在redis中,通過傳遞緩存key(tsparamPlaceContent),在后續(xù)接口獲取請(qǐng)求體
2、獲取緩存參數(shù):
對(duì)于請(qǐng)求參數(shù)過大的請(qǐng)求,通過傳遞過來的緩存key(tsparamPlaceContent),獲取請(qǐng)求體
大致步驟就是這樣,具體怎么實(shí)現(xiàn),根據(jù)各個(gè)項(xiàng)目不同代碼去實(shí)現(xiàn),該種解決方案也可適用于MQ在服務(wù)之間發(fā)送消息時(shí)內(nèi)容過大的問題
feign消費(fèi)時(shí),如果傳入?yún)?shù)過長
導(dǎo)致feign.FeignException: status 400 reading錯(cuò)誤
拋出異常:
feign.FeignException: status 400 reading ProjectFeignClient#getPartsByNodes(String,List)
原因:
查詢時(shí),list<integer>中有600個(gè)參數(shù)
解決辦法
查詢數(shù)據(jù)時(shí),分批查,每次500左右
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- springcloud?feign服務(wù)之間調(diào)用,date類型轉(zhuǎn)換錯(cuò)誤的問題
- SpringCloud中的Feign遠(yuǎn)程調(diào)用接口傳參失敗問題
- springcloud本地調(diào)試feign調(diào)用出現(xiàn)的詭異404問題及解決
- SpringCloud 服務(wù)負(fù)載均衡和調(diào)用 Ribbon、OpenFeign的方法
- SpringCloud使用Feign實(shí)現(xiàn)服務(wù)調(diào)用
- SpringCloud Feign 服務(wù)調(diào)用的實(shí)現(xiàn)
- SpringCloud服務(wù)之間Feign調(diào)用不會(huì)帶上請(qǐng)求頭header的解決方法
相關(guān)文章
Spring Boot 員工管理系統(tǒng)超詳細(xì)教程(源碼分享)
這篇文章主要介紹了Spring Boot 員工管理系統(tǒng)超詳細(xì)教程(源碼分享),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05Java 創(chuàng)建動(dòng)態(tài)類和查看方法列表信息的實(shí)例
這篇文章主要介紹了 Java 創(chuàng)建動(dòng)態(tài)類和查看方法列表信息的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-06-06引入QQ郵箱發(fā)送驗(yàn)證碼進(jìn)行安全校驗(yàn)功能實(shí)現(xiàn)
最近遇到這樣的需求用戶輸入自己的郵箱,點(diǎn)擊獲取驗(yàn)證碼,后臺(tái)會(huì)發(fā)送一封郵件到對(duì)應(yīng)郵箱中,怎么實(shí)現(xiàn)呢?下面小編給大家?guī)砹艘隥Q郵箱發(fā)送驗(yàn)證碼進(jìn)行安全校驗(yàn)功能,需要的朋友可以參考下2023-02-02springboot實(shí)現(xiàn)全局異常捕獲的使用示例
任何系統(tǒng),我們不會(huì)傻傻的在每一個(gè)地方進(jìn)行異常捕獲和處理,整個(gè)系統(tǒng)一般我們會(huì)在一個(gè)的地方統(tǒng)一進(jìn)行異常處理,本文主要介紹了springboot實(shí)現(xiàn)全局異常捕獲的使用示例,感興趣的可以了解一下2023-11-11使用Java WebSocket獲取客戶端IP地址的示例代碼
在開發(fā)Web應(yīng)用程序時(shí),我們通常需要獲取客戶端的 IP 地址用于日志記錄、身份驗(yàn)證、限制訪問等操作,本文將介紹如何使用Java WebSocket API獲取客戶端IP地址,以及如何在常見的WebSocket框架中獲得客戶端 IP地址,需要的朋友可以參考下2023-11-11springboot之Duration(java.time.Duration)在yml properties中
這篇文章主要介紹了springboot之Duration(java.time.Duration)在yml properties中的配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12Java?MethodHandles介紹與反射對(duì)比區(qū)別詳解
這篇文章主要為大家介紹了Java?MethodHandles介紹與反射對(duì)比區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11