java多文件post请求_如何使用Java发出多部分/表单数据POST请求?

小编典典

我们使用HttpClient 4.x进行多部分文件发布。

更新:从HttpClient 4.3开始,不推荐使用某些类。这是带有新API的代码:

CloseableHttpClient httpClient = HttpClients.createDefault();

HttpPost uploadFile = new HttpPost("...");

MultipartEntityBuilder builder = MultipartEntityBuilder.create();

builder.addTextBody("field1", "yes", ContentType.TEXT_PLAIN);

// This attaches the file to the POST:

File f = new File("[/path/to/upload]");

builder.addBinaryBody(

"file",

new FileInputStream(f),

ContentType.APPLICATION_OCTET_STREAM,

f.getName()

);

HttpEntity multipart = builder.build();

uploadFile.setEntity(multipart);

CloseableHttpResponse response = httpClient.execute(uploadFile);

HttpEntity responseEntity = response.getEntity();

以下是不推荐使用HttpClient 4.0 API的原始代码段:

HttpClient httpclient = new DefaultHttpClient();

HttpPost httppost = new HttpPost(url);

FileBody bin = new FileBody(new File(fileName));

StringBody comment = new StringBody("Filename: " + fileName);

MultipartEntity reqEntity = new MultipartEntity();

reqEntity.addPart("bin", bin);

reqEntity.addPart("comment", comment);

httppost.setEntity(reqEntity);

HttpResponse response = httpclient.execute(httppost);

HttpEntity resEntity = response.getEntity();

2020-02-29

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值