- public void inputStreamUpload() {
- //创建HttpClient对象
- CloseableHttpClient client = HttpClients.createDefault();
- //构建POST请求 请求地址请更换为自己的。
- //1)
- HttpPost post = new HttpPost("http://localhost:8003/uploadAndDownload/uploadFileAction");
- InputStream inputStream = null;
- try {
- //文件路径请换成自己的
- //2)
- inputStream = new FileInputStream("G:\\LearnVideo\\text01.txt");
- MultipartEntityBuilder builder = MultipartEntityBuilder.create();
- builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
- //第一个参数为 相当于 Form表单提交的file框的name值 第二个参数就是我们要发送的InputStream对象了
- //第三个参数是文件名
- //3)
- builder.addBinaryBody("uploadFile", inputStream, ContentType.create("multipart/form-data"), "text01.txt");
- //4)构建请求参数 普通表单项
- StringBody stringBody = new StringBody("12",ContentType.MULTIPART_FORM_DATA);
- builder.addPart("id",stringBody);
- HttpEntity entity = builder.build();
- post.setEntity(entity);
- //发送请求
- HttpResponse response = client.execute(post);
- entity = response.getEntity();
- if (entity != null) {
- inputStream = entity.getContent();
- //转换为字节输入流
- BufferedReader br = new BufferedReader(new InputStreamReader(inputStream, Consts.UTF_8));
- String body = null;
- while ((body = br.readLine()) != null) {
- System.out.println(body);
- }
- }
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (ClientProtocolException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }finally {
- if(inputStream != null){
- try {
- inputStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- }
网站首页 > 技术文章 正文
猜你喜欢
- 2024-08-03 Fury:一个基于JIT动态编译的高性能多语言原生序列化框架
- 2024-08-03 史上最全!CISCO网络故障排错命令大汇总
- 2024-08-03 一篇文章帮你搞懂什么是网络通信(网络 通信)
- 2024-08-03 谈谈dubbo异常处理(dubbo 异常)
- 2024-08-03 SpringBoot | RestTemplate异常处理器ErrorHandler使用详解
- 2024-08-03 聊聊HttpClient的RedirectStrategy
- 2024-08-03 「设计模式(四) - 责任链模式」(什么是责任链模式)
- 2024-08-03 SpringBoot系列之JDBC数据访问(springboot 访问数据库)
- 2024-08-03 聊聊HttpClient的HttpRoutePlanner
- 2024-08-03 工作日报 2021.10.20 OkHttp3错误异常:unexpected end of stream
- 05-23一篇文章学会c++高效内存池设计与实现(含源码)
- 05-23Java培训:C++和Java有什么区别?
- 05-23C++高精度乘法
- 05-23用C++程序解方程实例
- 05-23超详细 C/C++ 学习路线分析:学好 C/C++,走遍天下都不怕
- 05-23C++编程笔试题
- 05-23C++中的四种类型转换
- 05-23简述 C语言 有和 C++ 的基本区别,你真的懂吗?(新手面试必学)
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- js数组插入 (83)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)