欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Cloud使用Feign實現Form表單提交的示例

 更新時間:2018年03月28日 10:29:22   作者:周立  
本篇文章主要介紹了Spring Cloud使用Feign實現Form表單提交的示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

之前,筆者寫了《使用Spring Cloud Feign上傳文件》。近日,有同事在對接遺留的Struts古董系統(tǒng),需要使用Feign實現Form表單提交。其實步驟大同小異,本文附上步驟,算是對之前那篇的補充。

添加依賴:

<dependency>
 <groupId>io.github.openfeign.form</groupId>
 <artifactId>feign-form</artifactId>
 <version>3.2.2</version>
</dependency>
<dependency>
 <groupId>io.github.openfeign.form</groupId>
 <artifactId>feign-form-spring</artifactId>
 <version>3.2.2</version>
</dependency>

Feign Client示例:

@FeignClient(name = "xxx", url = "http://www.itmuch.com/", configuration = TestFeignClient.FormSupportConfig.class)
public interface TestFeignClient {
  @PostMapping(value = "/test",
      consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE},
      produces = {MediaType.APPLICATION_JSON_UTF8_VALUE}
      )
  void post(Map<String, ?> queryParam);
  class FormSupportConfig {
    @Autowired
    private ObjectFactory<HttpMessageConverters> messageConverters;
    // new一個form編碼器,實現支持form表單提交
    @Bean
    public Encoder feignFormEncoder() {
      return new SpringFormEncoder(new SpringEncoder(messageConverters));
    }
    // 開啟Feign的日志
    @Bean
    public Logger.Level logger() {
      return Logger.Level.FULL;
    }
  }
}

調用示例:

@GetMapping("/user/{id}")
public User findById(@PathVariable Long id) {
 HashMap<String, String> param = Maps.newHashMap();
 param.put("username","zhangsan");
 param.put("password","pwd");
 this.testFeignClient.post(param);
 return new User();
}

日志:

...[TestFeignClient#post] ---> POST http://www.baidu.com/test HTTP/1.1
...[TestFeignClient#post] Accept: application/json;charset=UTF-8
...[TestFeignClient#post] Content-Type: application/x-www-form-urlencoded; charset=UTF-8
...[TestFeignClient#post] Content-Length: 30
...[TestFeignClient#post]
...[TestFeignClient#post] password=pwd&username=zhangsan
...[TestFeignClient#post] ---> END HTTP (30-byte body)

由日志可知,此時Feign已能使用Form表單方式提交數據。

參考文檔
https://github.com/OpenFeign/feign-form
https://stackoverflow.com/questions/35803093/how-to-post-form-url-encoded-data-with-spring-cloud-feign

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • java中通用的線程池實例代碼

    java中通用的線程池實例代碼

    java中通用的線程池實例代碼,需要的朋友可以參考一下
    2013-03-03
  • 使用jvisualvm配合Visual GC插件監(jiān)控Java程序詳細總結

    使用jvisualvm配合Visual GC插件監(jiān)控Java程序詳細總結

    本節(jié)將會介紹一下jvisualvm的特性及作用、各個功能是如何使用的、最后會介紹jvisualvm的插件Visual GC的安裝及使用
    2021-09-09
  • 詳細聊聊Mybatis中萬能的Map

    詳細聊聊Mybatis中萬能的Map

    最近有個需求,就是使用mybatis時,向mysql中插入數據,其參數為map類型,下面這篇文章主要給大家介紹了關于Mybatis中萬能的Map的相關資料,需要的朋友可以參考下
    2021-12-12
  • 如何使用JavaCV進行圖像灰度化處理

    如何使用JavaCV進行圖像灰度化處理

    在計算機視覺和圖像處理領域,圖像灰度化是一項基礎且重要的任務,它將彩色圖像轉換為灰度圖像,JavaCV 是一個強大的開源庫,它提供了對各種計算機視覺算法和圖像處理操作的支持,本文將詳細介紹如何使用 JavaCV 進行圖像灰度化處理,需要的朋友可以參考下
    2024-10-10
  • Java實現通訊錄管理系統(tǒng)項目

    Java實現通訊錄管理系統(tǒng)項目

    這篇文章主要為大家詳細介紹了Java實現通訊錄管理系統(tǒng)項目,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java的Jackson庫中復雜對象集合的幾種簡單轉換

    Java的Jackson庫中復雜對象集合的幾種簡單轉換

    本文主要介紹了Java的Jackson庫中復雜對象集合的幾種簡單轉換。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • Java集合Set、List、Map的遍歷方法

    Java集合Set、List、Map的遍歷方法

    這篇文章主要介紹了Java集合Set、List、Map的遍歷方法,是非常實用的遍歷技巧,需要的朋友可以參考下
    2014-09-09
  • Java 選擇、冒泡排序、折半查找(實例講解)

    Java 選擇、冒泡排序、折半查找(實例講解)

    下面小編就為大家?guī)硪黄狫ava 選擇、冒泡排序、折半查找(實例講解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • spring集成redis cluster詳解

    spring集成redis cluster詳解

    這篇文章主要介紹了spring集成redis cluster詳解,分享了maven依賴,Spring配置,增加connect-redis.properties 配置文件等相關內容,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Java泛型變量如何添加約束

    Java泛型變量如何添加約束

    這篇文章主要介紹了Java泛型變量如何添加約束,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05

最新評論