http post multipart/mixed的文件.
依赖.
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<!-- <version>4.5.3</version> -->
</dependency>
import java.io.File;
import java.io.IOException; import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.mime.MultipartEntityBuilder;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils; public class TestMultiPartUpload { /**
* TODO 方法说明。
*
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException { CloseableHttpClient httpClient = HttpClientBuilder.create().build();
try { HttpPost post = new HttpPost("http://127.0.0.1:8080/mypath/test"); post.setHeader("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;)");
post.setHeader("charset", "utf-8");
String token = "4dc6098e-d584-4883-a4e7-45adc5xxxxxx";
post.setHeader("Authorization", "Bearer " + token);
post.setHeader("Accept", "application/json");
// post.setHeader("Content-Type", "multipart/mixed;boundary=----QWERTYUIO");
FileBody img1 = new FileBody(new File("D:/img/1.jpg"), ContentType.create("image/jpeg"), "1.jpg");
FileBody img2 = new FileBody(new File("D:/img/4.jpg"), ContentType.create("image/jpeg"), "4.jpg"); StringBody meta = new StringBody("{ \"key1\":\"v1\"; \"key2\":\"v2\" }", ContentType.APPLICATION_JSON); HttpEntity reqEntity = MultipartEntityBuilder.create()
.addPart("files", img1)
.addPart("files", img2)
//.addPart("story", meta).setBoundary("----QWERTYUIO")
.addPart("story", meta)
.build(); post.setEntity(reqEntity); CloseableHttpResponse response = httpClient.execute(post);
try {
System.out.println("----------------------------------------");
System.out.println(response.getStatusLine());
HttpEntity resEntity = response.getEntity();
if (resEntity != null) {
System.out.println("Response content: " + InputStreamUtil.toString(resEntity.getContent()));
System.out.println("Response content length: " + resEntity.getContentLength());
}
EntityUtils.consume(resEntity);
} finally {
response.close();
} } finally {
httpClient.close();
} } }
http post multipart/mixed的文件.的更多相关文章
- Java 处理 multipart/mixed 请求
一.multipart/mixed 请求 multipart/mixed 和 multipart/form-date 都是多文件上传的格式.区别在于,multipart/form-data 是一种 ...
- 使用JavaMail发送邮件-no object DCH for MIME type multipart/mixed报错解决
最近需要实现一个使用Spring schedule按一定时间间隔自动触发条件发送邮件的功能,在开发的过程中,是按照先测试能发出text/html文本邮件,然后测试添加附件发送邮件,我碰到的问题是,文本 ...
- Multipart/form-data POST文件上传详解
Multipart/form-data POST文件上传详解 理论 简单的HTTP POST 大家通过HTTP向服务器发送POST请求提交数据,都是通过form表单提交的,代码如下: <form ...
- Multipart/form-data POST文件上传详解(转)
Multipart/form-data POST文件上传详解 理论 简单的HTTP POST 大家通过HTTP向服务器发送POST请求提交数据,都是通过form表单提交的,代码如下: <form ...
- 构建multipart/form-data实现文件上传
构建multipart/form-data实现文件上传 通常文件上传都是通过form表单中的file控件,并将form中的content-type设置为multipart/form-data.现在我们 ...
- Http请求之基于HttpUrlConnection,支持Header,Body传值,支持Multipart上传文件:
Http请求之基于HttpUrlConnection,支持Header,Body传值,支持Multipart上传文件: public static String post(String actionU ...
- 发送邮件报错javax.activation.UnsupportedDataTypeException: no object DCH for MIME type multipart/mixed
关于使用javaMail发送邮件报错:javax.activation.UnsupportedDataTypeException: no object DCH for MIME type multip ...
- request doesn't contain a multipart/form-data or multipart/mixed stream ……
有文件控件"file"的表单,在提交的时候,直接使用了ajax提交,结果报了一堆错,原来这个东东要提交表单,还要用post方式,最后更改为: $("#saveForm&q ...
- spring mvc利用MultipartResolver解析Multipart/form-data进行文件上传
之前的表单数据都是文本数据,现记录:利用MultipartResolver进行文件上传. ①首先,需引入commons-fileUpload和commons-io jar包,pom.xml文件的坐标: ...
随机推荐
- Tensorflow中的name_scope和variable_scope
Tensorflow是一个编程模型,几乎成为了一种编程语言(里面有变量.有操作......). Tensorflow编程分为两个阶段:构图阶段+运行时. Tensorflow构图阶段其实就是在对图进行 ...
- Android开发环境——连接驱动ADB相关内容汇总
Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT相关 ...
- 支持向量机-SVM 学习
一 .支持向量机(SVM) 1.1 符号定义 标签 y 不再取 0 或 1,而是: y∈{-1, 1} 定义函数: 向量,没有第 0 个维度,b 为截距,预测函数定义为: 1.2 函数间隔与几何间隔 ...
- mac系统下安装mysql 和phpmyadmin
用惯了在Windows上一个appserv或phpStudy压缩包搞定,要在MAC OSX 10.10上捣腾一个PHP开发环境还不大习惯.但自己亲自配一下环境还是有所收获的.众所周知OSX上自带了ap ...
- iCheck的全选和获取value
一.全选 在使用jQuery iCheck 插件的时候遇到了一个问题,就是当我们使用普通的js全选功能无效了. $("#checkall").click( function(){ ...
- TensorFlow实战
TensorFlow实战:Chapter-1(TensorFlow介绍) TensorFlow实战:Chapter-2(TensorFlow入门) TensorFlow实战:Chapter-3(CNN ...
- hashCode和identityHashCode底层是怎么生成的
前言:在工作中使用==埋下的坑这篇博文的最后,我想到了两个问题,其中一个是——为什么 int int1=99;int int2=99;int1和int2的identityHashCode是 ...
- 【struts2】Struts2的异常处理
在Action中execute方法声明为:public String execute() throws Exception,这样,Action可以抛出任何Exception. 1)自己实现异常处理 我 ...
- process credentials(一)
一.介绍 当linux系统中的一个进程运行起来的时候,总是要访问系统的资源,访问文件或者向其他的进程发送信号.系统是否允许其进行这些操作?系统是根据什么来判断该进程的权限?这些问题是和进程信任状(pr ...
- SpringBoot多跨域请求的支持(JSONP)
在我们做项目的过程中,有可能会遇到跨域请求,所以需要我们自己组装支持跨域请求的JSONP数据,而在4.1版本以后的SpringMVC中,为我们提供了一个AbstractJsonpResponseBod ...