最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

OpenFeign設(shè)置header的三種方式總結(jié)

 更新時(shí)間:2023年04月03日 11:23:43   作者:java技術(shù)媛  
在微服務(wù)間使用Feign進(jìn)行遠(yuǎn)程調(diào)用時(shí)需要在header中添加信息,下面這篇文章主要給大家介紹了關(guān)于OpenFeign設(shè)置header的三種方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

設(shè)置OpenFeign的FeignClient的Header信息

在微服務(wù)間使用Feign進(jìn)行遠(yuǎn)程調(diào)用時(shí)需要在 header 中添加信息,那么 SpringBoot和SpringCloud OpenFeign的@FeignClient如何設(shè)置 header 呢?有5種方式可以設(shè)置請(qǐng)求頭信息:

• 在@RequestMapping注解里添加headers屬性

• 在方法參數(shù)前面添加@RequestHeader注解

• 實(shí)現(xiàn)RequestInterceptor接口

由于Feign是完全支持Spring MVC注解的, 所以推薦使用前兩種Feign設(shè)置header的方式, 即: Spring MVC中使用注解設(shè)置header.

1、在@RequestMapping注解里添加headers屬性

在application.yml中配置

my.name=wtl
@PostMapping(value = "/service/rest/v1/script/{scriptName}/run",headers = {"Authorization=Basic YWRtaW46QFdUTDE5OTIwMTE4MDI3MQ==","Content-Type=text/plain","AppSecret=${my.name}"})
    String runScript(@PathVariable("scriptName") String scriptName);

2、在方法參數(shù)前面添加@RequestHeader注解

設(shè)置單個(gè)header屬性

@PostMapping(value = "/service/rest/v1/script/{scriptName}/run",headers = {"Content-Type=text/plain","AppSecret=${my.name}"})
 
    String runScript(@PathVariable("scriptName") String scriptName,@RequestHeader("Authorization") String authorization);
public String runScript(String scriptName) {
        return nexusOpenFeign.runScript(scriptName,"Basic YWRtaW46QFdUTDE5OTIwMTE4MDI3MQ==");
    }

設(shè)置多個(gè)header屬性

@PostMapping(value = "/service/rest/v1/script/{scriptName}/run")
    String runScript(@PathVariable("scriptName") String scriptName,@RequestHeader MultiValueMap<String, String> headers);
public String runScript(String scriptName) {
        MultiValueMap<String, String> headers = new HttpHeaders();
        headers.put("Authorization", Collections.singletonList("Basic YWRtaW46QFdUTDE5OTIwMTE4MDI3MQ=="));
        headers.add("Content-Type","text/plain");
        return nexusOpenFeign.runScript(scriptName,headers);
    }

3、實(shí)現(xiàn)RequestInterceptor接口

如果FeignRequestInterceptor注入到spring容器的話(huà)就會(huì)全局生效, 就是說(shuō)即使在沒(méi)有指定configuration屬性的FeignClient該配置也會(huì)生效。
配置@Component或@Service 或 @Configuration 就可以將該配置注入spring容器中, 即可實(shí)現(xiàn)全局配置, 從而該項(xiàng)目中的所有FeignClient的feign接口都可以使用該配置.

如果只想給指定FeignClient的feign接口使用該配置, 請(qǐng)勿將該類(lèi)配置注入spring中。

@Configuration
public class FeignRequestInterceptor implements RequestInterceptor {
 
    @Override
    public void apply(RequestTemplate template) {
        template.header(HttpHeaders.AUTHORIZATION, "tokenVal");
    }
 
}
@FeignClient(url = "${user.api.url}", name = "user", configuration = FeignRequestInterceptor.class)
public interface UserFeignClient {
    @GetMapping(value = "/simple/{id}")
    public User findById(@RequestParam("id") String id);
}

 總結(jié)

到此這篇關(guān)于OpenFeign設(shè)置header的三種方式的文章就介紹到這了,更多相關(guān)OpenFeign設(shè)置header內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 分布式消息隊(duì)列RocketMQ概念詳解

    分布式消息隊(duì)列RocketMQ概念詳解

    RocketMQ?是阿里開(kāi)源的分布式消息中間件,跟其它中間件相比,RocketMQ?的特點(diǎn)是純JAVA實(shí)現(xiàn),是一套提供了消息生產(chǎn),存儲(chǔ),消費(fèi)全過(guò)程API的軟件系統(tǒng),本文詳細(xì)介紹了分布式消息隊(duì)列RocketMQ概念,需要的朋友可以參考下
    2023-05-05
  • Java語(yǔ)言的11大特點(diǎn)(Java初學(xué)者必知)

    Java語(yǔ)言的11大特點(diǎn)(Java初學(xué)者必知)

    Java是一種簡(jiǎn)單的,面向?qū)ο蟮?,分布式的,解釋型的,健壯安全的,結(jié)構(gòu)中立的,可移植的,性能優(yōu)異、多線(xiàn)程的靜態(tài)語(yǔ)言。這篇文章主要介紹了Java語(yǔ)言的11大特點(diǎn),需要的朋友可以參考下
    2020-07-07
  • java的線(xiàn)程池框架及線(xiàn)程池的原理

    java的線(xiàn)程池框架及線(xiàn)程池的原理

    這篇文章主要介紹了java的線(xiàn)程池框架及線(xiàn)程池的原理的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • MyBatis流式查詢(xún)的三種實(shí)現(xiàn)方法

    MyBatis流式查詢(xún)的三種實(shí)現(xiàn)方法

    流式查詢(xún)指的是查詢(xún)成功后不是返回一個(gè)集合而是返回一個(gè)迭代器,應(yīng)用每次從迭代器取一條查詢(xún)結(jié)果,本文介紹了MyBatis流式查詢(xún)的實(shí)現(xiàn),感興趣的可以了解一下
    2021-05-05
  • Spring Cloud Gateway 服務(wù)網(wǎng)關(guān)快速實(shí)現(xiàn)解析

    Spring Cloud Gateway 服務(wù)網(wǎng)關(guān)快速實(shí)現(xiàn)解析

    這篇文章主要介紹了Spring Cloud Gateway 服務(wù)網(wǎng)關(guān)快速實(shí)現(xiàn)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Java配置JDK開(kāi)發(fā)環(huán)境及環(huán)境變量

    Java配置JDK開(kāi)發(fā)環(huán)境及環(huán)境變量

    這篇文章主要為大家詳細(xì)介紹了Java配置JDK開(kāi)發(fā)環(huán)境及環(huán)境變量,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Spring測(cè)試 其實(shí)很簡(jiǎn)單

    Spring測(cè)試 其實(shí)很簡(jiǎn)單

    這篇文章主要為大家詳細(xì)介紹了Spring測(cè)試,其實(shí)很簡(jiǎn)單,揭開(kāi)集成測(cè)試神秘的面紗,感興趣的小伙伴們可以參考一下
    2016-07-07
  • java 調(diào)用本地?fù)P聲器的步驟

    java 調(diào)用本地?fù)P聲器的步驟

    博主的畢設(shè)系統(tǒng)在做一個(gè)餐廳的點(diǎn)餐管理系統(tǒng),在進(jìn)行移動(dòng)端頁(yè)面開(kāi)發(fā)的時(shí)候突發(fā)奇想做一個(gè)呼叫功能,因此就有了這篇文章
    2021-05-05
  • Spring boot 集成 Druid 數(shù)據(jù)源過(guò)程詳解

    Spring boot 集成 Druid 數(shù)據(jù)源過(guò)程詳解

    這篇文章主要介紹了Spring boot 集成 Druid 數(shù)據(jù)源過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 在springboot中如何使用線(xiàn)程池

    在springboot中如何使用線(xiàn)程池

    在SpringBoot中,可以通過(guò)定義ThreadPoolTaskExecutor的Bean并使用@Autowired注入來(lái)使用線(xiàn)程池,具體步驟包括創(chuàng)建ThreadPoolTaskExecutor的Bean配置,本文給大家介紹springboot使用線(xiàn)程池的例子,感興趣的朋友跟隨小編一起看看吧
    2024-09-09

最新評(píng)論

辽宁省| 卓资县| 太谷县| 彭州市| 靖安县| 吉林市| 长垣县| 万源市| 大连市| 通城县| 叶城县| 靖江市| 南通市| 永德县| 延边| 珠海市| 名山县| 彭山县| 巫溪县| 江陵县| 武隆县| 绥宁县| 凤翔县| 涿鹿县| 铜鼓县| 阿拉善左旗| 株洲县| 平乐县| 漳平市| 滕州市| 六安市| 赞皇县| 琼中| 八宿县| 宁化县| 阜平县| 龙州县| 伊川县| 石柱| 邵武市| 台东县|