private void upLoadOnClick(View v) {
String upUrl = "/mnt/sdcard/pic/test.jpg";//指定要上传的文件
final ProgressDialog dia = new ProgressDialog(this);
dia.setMessage("加载中....");
dia.show();
RequestParams params = new RequestParams(upUrl);
params.addBodyParameter("file", new File(upUrl));
x.http().post(params, new Callback.CommonCallback<String>() {
@Override
public void onSuccess(String result) {
//加载成功回调,返回获取到的数据
Log.i(TAG, "onSuccess: " + result);
}
@Override
public void onFinished() {
dia.dismiss();//加载完成
}
@Override
public void onCancelled(CancelledException cex) {
}
@Override
public void onError(Throwable ex, boolean isOnCallback) {
}
});
}
public void setRequestBody(RequestBody requestBody) {
this.requestBody = requestBody;
}
private void generateContentType() {
String boundaryPostfix = Double.toHexString(Math.random() * 0xFFFF);
boundaryPostfixBytes = boundaryPostfix.getBytes();
contentType = "multipart/form-data; boundary=" + new String(BOUNDARY_PREFIX_BYTES) + boundaryPostfix;
}
//参数分别是要传入的数据,和数据编码类型
public MultipartBody(List<KeyValue> multipartParams, String charset) {
if (!TextUtils.isEmpty(charset)) {
this.charset = charset;
}
this.multipartParams = multipartParams;
generateContentType();
...
}
//创建List<KeyValue>对象
List<KeyValue> list = new ArrayList<>();
//给list中添加数据,filePah是上传的文件路径,比如sd卡中图片
list.add(new KeyValue("file", new File(filePah)));//文件流数据
//其它参数,根据项目而定,比如我的项目中要传入的参数是json格式的
list.add(new KeyValue("parameters", json.toString()));
//创建MultipartBody
MultipartBody body = new MultipartBody(list, "UTF-8");
//添加请求参数
params.setRequestBody(body);
//要传递给服务器的json格式参数
JSONObject json = new JSONObject();
try {
json.put("devId", id);
json.put("devName", devName);
json.put("keyWord", keyWord);
} catch (JSONException e) {
e.printStackTrace();
}
//构建RequestParams对象,传入请求的服务器地址URL
RequestParams params = new RequestParams(Constants.UPLOAD_FILE);
params.setAsJsonContent(true);
List<KeyValue> list = new ArrayList<>();
list.add(new KeyValue("file", new File(filePah)));
list.add(new KeyValue("parameters", json.toString()));
MultipartBody body = new MultipartBody(list, "UTF-8");
params.setRequestBody(body);
x.http().post(params, new org.xutils.common.Callback.CommonCallback<String>() {
@Override
public void onSuccess(String result) {
LogUtil.e("请求结果:" + result);
}
@Override
public void onFinished() {
//上传完成
}
@Override
public void onCancelled(CancelledException cex) {
//取消上传
}
@Override
public void onError(Throwable ex, boolean isOnCallback) {
//上传失败
LogUtil.e("请求失败:" + ex.toString());
}
});
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有