HTTPClient携带参数发送文件

导读:本篇文章讲解 HTTPClient携带参数发送文件,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

MultipartyFile类型也能发送,我这里是发送的File类型的

public static String postFile(String url,String file,FileBody fileBody,Map<String,String> headers,Map<String,String> param) throws Exception {
			CloseableHttpClient httpClient = getHttpClient();
			HttpPost post = new HttpPost(url);
            //设置请求头
			for (String key : headers.keySet()) {
				post.setHeader(key, headers.get(key));
			}
			//设置参数
			MultipartEntityBuilder builder = MultipartEntityBuilder.create();
			for(Map.Entry<String, String> key : param.entrySet()){
				builder.addTextBody(key.getKey(),key.getValue());
			}
            //添加文件
			builder.addPart(file,fileBody);
			HttpEntity reqEntity = builder.build();
			post.setEntity(reqEntity);
            //发送请求
			CloseableHttpResponse response = httpClient.execute(post);
            //获取响应
			String respStr = null;
			HttpEntity responseEntity = response.getEntity();
			if (responseEntity != null) {
				respStr = EntityUtils.toString(responseEntity, "UTF-8");
			}

			//释放连接
			EntityUtils.consume(response.getEntity());
			response.close();

			return respStr;
	}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/107529.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!