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

RestTemplate發(fā)送get和post請(qǐng)求,下載文件的實(shí)例

 更新時(shí)間:2020年09月29日 10:34:34   作者:xqnode  
這篇文章主要介紹了RestTemplate發(fā)送get和post請(qǐng)求,下載文件的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

下圖是我的所有測(cè)試接口,包含兩個(gè)表單提交接口和一個(gè)Rest接口:

我是用的Http請(qǐng)求工具是Spring自帶的RestTemplate。

請(qǐng)求的方法如下:

三個(gè)請(qǐng)求分別對(duì)應(yīng)三個(gè)接口,在此記錄下。

下載文件,獲取文件字節(jié)流:

RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
ResponseEntity<byte[]> entity = restTemplate.exchange("http://ip:port/test.doc", HttpMethod.GET,new HttpEntity<>(headers), byte[].class);
byte[] body = entity.getBody();

multipart/form-data 文件上傳:

RestTemplate restTemplate = new RestTemplate();
String url = "http://127.0.0.1:8080/file/upload"
MultiValueMap<String, Object> multiValueMap = new LinkedMultiValueMap<>();
// 設(shè)置multi/form-data文件
multiValueMap.add("file", new FileSystemResource("D:/1.mp3"));
multiValueMap.add("name", "測(cè)試材料");

// http請(qǐng)求
String response = restTemplate.postForObject(url, multiValueMap, String.class);

補(bǔ)充知識(shí):restTemplate發(fā)送get與post請(qǐng)求 并且?guī)?shù)

我就廢話不多說(shuō)了,大家還是直接看代碼吧~

@Test
 public void test() throws Exception{
 String url = "http://localhost:8081/aa";
 //headers
 HttpHeaders requestHeaders = new HttpHeaders();
 requestHeaders.add("api-version", "1.0");
 //body
 MultiValueMap<String, String> requestBody = new LinkedMultiValueMap<>();
 requestBody.add("id", "1");
 //HttpEntity
 HttpEntity<MultiValueMap> requestEntity = new HttpEntity<MultiValueMap>(requestBody, requestHeaders);
 //post
 ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, requestEntity, String.class);
 System.out.println(responseEntity.getBody());
 
 ResponseEntity<String> responseEntity1 = restTemplate.exchange("http://172.26.186.206:8080/hive/list/schemas?appid=admin_test",
  HttpMethod.GET, requestEntity, String.class);
 System.out.println(responseEntity1.getBody());
 }

restTemplate的注解如下:

@Component
public class MyConfig { 
 
  @Autowired
  RestTemplateBuilder builder;
 
  @Bean
  public RestTemplate restTemplate() {
    return builder.build();
  }
}

發(fā)送get請(qǐng)求

 @Test
 public void testCheck() {
 String url = "http://172.26.186.206:8080/syncsql/process";
 String timeStramp = String.valueOf(System.currentTimeMillis());
 HttpHeaders headers = new HttpHeaders();
 headers.add("appid", "");
 headers.add("sign", sign(null, null,null));
 headers.add("timestamp", timeStramp);
 
 JSONObject jsonObj = new JSONObject();
 
 HttpEntity<String> formEntity = new HttpEntity<String>(null, headers);
 
 Map<String, Object> maps = new HashMap<String, Object>();
 maps.put("sql", "select * from jingfen.d_user_city");
 maps.put("type", 1);
 maps.put("account", "admin_test");
 
 ResponseEntity<String> exchange = restTemplate.exchange(url + "?sql={sql}&type={type}&account={account}",
  HttpMethod.GET,
  formEntity, String.class, maps);
 String body = exchange.getBody();
 
 LOGGER.info("{}", body);
 }

以上這篇RestTemplate發(fā)送get和post請(qǐng)求,下載文件的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何在yml配置文件中使用中文注解

    如何在yml配置文件中使用中文注解

    這篇文章主要介紹了如何在yml配置文件中使用中文注解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Spring Boot如何獲取maven打包時(shí)間

    Spring Boot如何獲取maven打包時(shí)間

    這篇文章主要介紹了Spring Boot如何獲取maven打包時(shí)間,首先引入maven打包插件,本文分步驟給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2024-03-03
  • spring boot啟動(dòng)出現(xiàn)Unable to start ServletWebServerApplicationContext due to missing ServletWebServer錯(cuò)誤解決

    spring boot啟動(dòng)出現(xiàn)Unable to start ServletWe

    在使用SpringBoot時(shí),啟動(dòng)報(bào)錯(cuò)可能源于多種原因,錯(cuò)誤提示為缺少ServletWebServerFactory bean,初步分析可能是缺少spring-boot-starter-web依賴或@EnableAutoConfiguration注解,感興趣的可以了解一下
    2024-10-10
  • Java如何在沙箱環(huán)境中測(cè)試支付寶支付接口

    Java如何在沙箱環(huán)境中測(cè)試支付寶支付接口

    這篇文章主要介紹了Java如何在沙箱環(huán)境中測(cè)試支付寶支付接口,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Mybatis 中的一對(duì)一,一對(duì)多,多對(duì)多的配置原則示例代碼

    Mybatis 中的一對(duì)一,一對(duì)多,多對(duì)多的配置原則示例代碼

    這篇文章主要介紹了 Mybatis 中的一對(duì)一,一對(duì)多,多對(duì)多的配置原則示例代碼,需要的朋友可以參考下
    2017-03-03
  • SpringBoot通過(guò)自定義注解與異步來(lái)管理日志流程

    SpringBoot通過(guò)自定義注解與異步來(lái)管理日志流程

    實(shí)現(xiàn)日志管理說(shuō)實(shí)話方式還挺多,個(gè)人使用過(guò)直接在Controller代碼里面寫、AOP+自定義注解、ConstraintValidator。本文主要和大家講的是自定義注解與異步來(lái)管理日志流程,感興趣的可以了解一下
    2023-03-03
  • java連接zookeeper的3種方式小結(jié)

    java連接zookeeper的3種方式小結(jié)

    這篇文章主要介紹了java連接zookeeper的3種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • springcloud使用Hystrix進(jìn)行微服務(wù)降級(jí)管理

    springcloud使用Hystrix進(jìn)行微服務(wù)降級(jí)管理

    這篇文章主要介紹了springcloud使用Hystrix進(jìn)行微服務(wù)降級(jí)管理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Java基礎(chǔ)之初識(shí)Maven

    Java基礎(chǔ)之初識(shí)Maven

    這篇文章主要介紹了Java基礎(chǔ)之初識(shí)Maven,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • java實(shí)現(xiàn)超大文件的讀寫功能

    java實(shí)現(xiàn)超大文件的讀寫功能

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)超大文件的讀寫功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05

最新評(píng)論