RestTemplate发送get和post请求,下载文件

news/2024/7/4 13:26:14 标签: Java, RestTemplate

下图是我的所有测试接口,包含两个表单提交接口和一个Rest接口:

这里写图片描述

我是用的Http请求工具是Spring自带的RestTemplate
请求的方法如下:
http

三个请求分别对应三个接口,在此记录下。

下载文件,获取文件字节流:

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<>();
// 设置multi/form-data文件
multiValueMap.add("file", new FileSystemResource("D:/1.mp3"));
multiValueMap.add("name", "测试材料");

// http请求
String response = restTemplate.postForObject(url, multiValueMap, String.class);

http://www.niftyadmin.cn/n/887902.html

相关文章

php函数serialize()与unserialize()

serialize()和unserialize()在php手册上的解释是: serialize — Generates a storable representation of a value serialize — 产生一个可存储的值的表示 unserialize — Creates a PHP value from a stored representation unserialize — 从已存储的表示中创建 PHP 的值 …

自定义名称的线程池

我们来看一下JDK1.6中java.util.concurrent.Executors使用的DefaultThreadFactory&#xff1a; /*** The default thread factory*/static class DefaultThreadFactory implements ThreadFactory {static final AtomicInteger poolNumber new AtomicInteger(1);final ThreadGr…

ecshop怎样在新主页模板里调用首页主广告

第一步&#xff1a;index.php里加了一个方法&#xff0c;调用XML文件&#xff1b;function get_flash_xml()function get_flash_xml() {$flashdb array();if (file_exists(ROOT_PATH . DATA_DIR . /flash_data.xml)){// 兼容v2.7.0及以前版本if (!preg_match_all(/item_url&qu…

Java pdf和jpg互转

pdfbox: jpg转pdf&#xff1a; /*** 使用pdfbox将jpg转成pdf* param jpgStream jpg输入流* param pdfPath pdf文件存储路径* throws IOException IOException*/public static void jpgToPdf(InputStream jpgStream, String pdfPath) throws IOException {PDDocument pdDocumen…

ECSHOP添加广告位的方法,并且去掉广告链接

1.在ECSHOP模板中lbi文件中添加广告位的方法 一般的广告位是写在dwt文件里的。 也有人希望能直接写在lbi文件里。那么我们可以这样做 先在后台发布好广告位和广告&#xff0c;记住这个广告位的ID&#xff0c;这里暂时假设该ID为2 然后修改 lbi 文件 在想显示广告位的地方加入下…

解决SpringBoot2.0集成Swagger2访问404的问题

最近使用最新的SpringBoot2.0集成Swagger2的时候遇到一个问题&#xff0c;集成之后打开Swagger页面的时候出现404&#xff0c;后台提示找不到swagger-ui的页面。于是我看了下项目依赖swagger的结构&#xff1a; 可以看到 swagger-ui.html 在META-INF/resources目录下&#xff…

SpringBoot中使用@Async注解失效问题记录

错误示例&#xff0c;同一个类中使用异步方法&#xff1a; package com.xqnode.learning.controller;import com.fasterxml.jackson.core.JsonProcessingException; import org.springframework.scheduling.annotation.Async; import org.springframework.web.bind.annotation…

记一次ES安装的采坑记录

今天心血来潮&#xff0c;想玩玩ES&#xff08;elasticSearch&#xff09;&#xff0c;我使用的操作系统版本是&#xff1a;CentOS7.4&#xff0c;ES版本是&#xff1a;6.3.2&#xff0c;Java版本是&#xff1a;8u181。具体的下载步骤这里不再做详细介绍。 安装完Jdk后开始安装…