SpringCloud組件OpenFeign之默認(rèn)HTTP請(qǐng)求方式詳解
OpenFeign的默認(rèn)HTTP請(qǐng)求方式
OpenFeign相較于Feign新增了對(duì)SpringMvc的支持,通過以下方式可以調(diào)用服務(wù)端對(duì)應(yīng)的方法。
但是如果使用@RequestMapping注解不指定請(qǐng)求方式時(shí),通過客戶端打印的OpenFein日志可以看出,客戶端都是使用的GET請(qǐng)求。
只有使用@PostMapping或者@RequestMapping中指定請(qǐng)求類型@RequestMapping(method = RequestMethod.POST)發(fā)送的才是POST請(qǐng)求。
那么使用@RequestMapping()時(shí)OpenFiegn默認(rèn)是使用GET請(qǐng)求?
OK,問題的答案還需要從OpenFeign的源碼中查找。
在SpringMvcContract類中有個(gè)這樣的方法processAnnotationOnMethod。
見名思意,這個(gè)方法就是處理Feign接口下方法上的注解的。
與本問題相關(guān)的關(guān)鍵代碼為上圖中第218~225行,粘貼以下并添加注解。
// 獲取指定方法上的RequestMapping注解信息 RequestMapping methodMapping = findMergedAnnotation(method, RequestMapping.class); // 指定方法上的RequestMapping注解信息method屬性的屬性值數(shù)組 RequestMethod[] methods = methodMapping.method(); // 如果沒有設(shè)置請(qǐng)求方式,那么默認(rèn)創(chuàng)建GET請(qǐng)求 if (methods.length == 0) { methods = new RequestMethod[] { RequestMethod.GET }; } // 校驗(yàn)是否只有一種請(qǐng)求方式 checkOne(method, methods, "method"); // 若是則將RequestMethod.GET作為該方法的請(qǐng)求方式,并存放到RequestTemplate中template的method中供后續(xù)處理并使用 data.template().method(Request.HttpMethod.valueOf(methods[0].name()));
所以,如果@FeignClient注解修飾的接口中使用@RequestMapping且不指定請(qǐng)求方式,那么默認(rèn)是使用GET請(qǐng)求的。
到此這篇關(guān)于SpringCloud組件OpenFeign之默認(rèn)HTTP請(qǐng)求方式詳解的文章就介紹到這了,更多相關(guān)OpenFeign的默認(rèn)HTTP請(qǐng)求方式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot多模塊多環(huán)境配置文件問題(動(dòng)態(tài)配置生產(chǎn)和開發(fā)環(huán)境)
這篇文章主要介紹了springboot多模塊多環(huán)境配置文件問題(動(dòng)態(tài)配置生產(chǎn)和開發(fā)環(huán)境),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04SpringBoot整合RabbitMQ 手動(dòng)應(yīng)答(簡單demo)
這篇文章主要介紹了SpringBoot整合RabbitMQ 手動(dòng)應(yīng)答 簡單demo,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01springBoot前后端分離項(xiàng)目中shiro的302跳轉(zhuǎn)問題
這篇文章主要介紹了springBoot前后端分離項(xiàng)目中shiro的302跳轉(zhuǎn)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12走進(jìn)SpringBoot之配置文件與多環(huán)境詳解
這篇文章主要介紹了走進(jìn)SpringBoot之配置文件與多環(huán)境,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05