多文件、多图片、JSON字符串上传
来源:互联网 发布:为什么需要软件测试 编辑:程序博客网 时间:2024/04/24 07:08
本篇博客主要记录两个问题:
1.多文件上传
2.将json作为一个参数上传(不是以json方式上传)
先直接上一段代码,然后再做解释。
public static void uploadImage(final Activity activity, String userid, String sourceid, String json, String tagid, List<File> bitmapList, File mBitmap) { RequestParams params = new RequestParams( Constant.URL.EMOJI_UPLOAD_IMAGE_TEXT); params.addBodyParameter("userid", userid); // 自己新创作的都是空,改图的为原图的id params.addBodyParameter("sourceid", sourceid); // 如果参数中有json字符串作为参数,必须加这个 params.setAsJsonContent(true); // 图片和文字的json,有顺序的,和后面图片上传要对应顺序 params.addBodyParameter("json", json); // 话题id params.addBodyParameter("tagid", tagid); // 添加到请求body体的参数, 只有POST, PUT, PATCH, DELETE请求支持. // 使用multipart表单上传文件 params.setMultipart(true); // 零件图片 if (bitmapList != null && bitmapList.size() > 0) { for (int i = 0; i < bitmapList.size(); i++) { params.addBodyParameter("file[" + i + "]", bitmapList.get(i), "image/jpeg"); } } else { ToastUtils.showTextToast(activity, "图片资源以损坏"); return; } // 整图 if (mBitmap != null) { params.addBodyParameter("userfile", mBitmap, "image/jpeg"); } ToastUtils.showfeelDialog(activity); x.http().post(params, new Callback.CommonCallback<String>() { @Override public void onSuccess(String result) { try { } } catch (Exception e) { e.printStackTrace(); } ToastUtils.cancelProgressFeel(); } @Override public void onError(Throwable ex, boolean isOnCallback) { Toast.makeText(x.app(), ex.getMessage(), Toast.LENGTH_LONG) .show(); ToastUtils.cancelProgressFeel(); } @Override public void onCancelled(CancelledException cex) { Toast.makeText(x.app(), "cancelled", Toast.LENGTH_LONG).show(); ToastUtils.cancelProgressFeel(); } @Override public void onFinished() { ToastUtils.cancelProgressFeel(); } }); }
1.
这里的多图片上传是借助xutils来完成的,使用其他的方式也都是可以的,主要是以一个表单的形式上传文件,
params.addBodyParameter("file[" + i + "]", bitmapList.get(i), "image/jpeg");
这里第一个参数是服务器指定的参数名称,不同的公司定义参数名的方式不同,第二个参数是要上传的文件,第三个是类型。
2.这里我们将一个json作为string类型的参数上传,必须要添加如下的代码。
// 如果参数中有json字符串作为参数,必须加这个params.setAsJsonContent(true);// 图片和文字的json,有顺序的,和后面图片上传要对应顺序params.addBodyParameter("json", json);
其他不同的请求方式同样可以在请求时设置支持参数是json的格式。
0 0
- 多文件、多图片、JSON字符串上传
- Retrofit 2.0 超能实践(三),轻松实现文件/多图片上传/Json字符串
- Retrofit 2.0 超能实践(三),轻松实现多文件/图片上传/Json字符串/表单
- Retrofit 2.0 超能实践(三),轻松实现多文件/图片上传/Json字符串/表单
- 多文件(图片)上传-限制上传个数
- 多文件(图片)上传-限制上传个数
- 上传多个图片文件
- swfupload+json+struts2实现多图片上传功能(一)
- PHP上传多文件,多图片程序代码
- 多文件和多图片上传
- Java多图片及多文件上传
- Retrofit 上传多张图片/文件
- SpringMvc MultipartFile 多张图片文件上传
- php多图片(文件)上传
- 多图片上传,多文件上传。插件diyUpload.js
- 多图片上传,多文件上传。插件diyUpload.js
- 小程序开发 图片上传,多文件上传。
- xutils上传json字符串
- LVDS接口详解
- 字符串最后一个单词长度
- 2016SDAU课程练习三1018
- 练习1-19 编写函数reverse(s),将字符串s中的字符顺序颠倒过来。使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序
- 贺“阿来之家”博客正式开通~
- 多文件、多图片、JSON字符串上传
- leetcode 145. Binary Tree Postorder Traversal
- Ovs交换机环路
- 安卓小案例收集五(内容提供者、动画)
- 2.Enable ADB integration' to be enabled.
- 从头学android_GET 和 POST 网络请求
- Android实现正方系统的登录以及课程表,成绩获取和空课室的查询(二)
- tp框架多个OR与And连用查询笔记
- SDWebImage异步下载和缓存的源码剖析