安卓下httppost多个文件的上传及参数

需要注意的是:

安卓下需要引入httpmime.jar  点击打开链接


HttpPost httppost = new HttpPost(url);

MultipartEntity reqEntity = new MultipartEntity();
//此处为文件上传
if (files != null && files.size() > 0) {
	for (Map.Entry<String, String> en : files.entrySet()) {
		reqEntity.addPart(en.getKey(), new FileBody(new File(en.getValue())));//file1为请求后台的File upload;属性
	}
}
//此处为参数上传
if (map != null && map.size() > 0) {
	for (Map.Entry<String, String> en : map.entrySet()) {
		reqEntity.addPart(en.getKey(), new StringBody(en.getValue()));
	}
}

//设置请求头信息
httppost.setHeader("User-Agent", WeiTaiXinApplication.instance.getUser_agent());

httppost.setEntity(reqEntity);

// 3: 获取默认的请求client
DefaultHttpClient client = new DefaultHttpClient();
// 4.1:设置请求超时
client.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, TIME_CONNECTION_OUT);
// 4.2:设置读取超时
client.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, TIME_SO_OUT);
// 4.3:设置HttpClient会在请求中携带由服务器返回的Cookie
client.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.BEST_MATCH);

// 5:取得HTTP Response
HttpResponse response = client.execute(httppost);
/** 6.服务器返回状态吗 **/
int statusCode = response.getStatusLine().getStatusCode();
LogUtils.i("服务器响应状态码:" + statusCode);

// 状态码为200代表OK
if (statusCode == 200) {
	/** 服务器返回数据 **/
	String strResult = EntityUtils.toString(response.getEntity(), HTTP.UTF_8);
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值