Android HTTP multipart/form-data 请求协议信息实现图片上传

 

问题:
Android应用中,遇到填写用户信息、发表评论等操作,不可避免会遇到“form表单操作”(类似web form操作)上传图片的功能。
在这种情况下,使用Android的HTTPConnection/ ApacheHTTP 通过POST 和GET的方式就实现不了。
解决方法:

Android客户端通过模拟 HTTP multipart/form-data 请求协议信息实现图片上传。

一、文件头类型

            Map head = new HashMap<>();
            head.put("Content-Type", "multipart/form-data");

二、将图片评论等放到文件列表中

以下只是举例将多张图片放到文件中

List fileList=new ArrayList();
for(int i=0;i

三、http请求

    public  static void post_file( final String url, final Map head, final Map param, List files, String name, okhttp3.Callback callback) {
        OkHttpClient client = new OkHttpClient();
        // form 表单形式上传
        MultipartBody.Builder requestBody = new MultipartBody.Builder().setType(MultipartBody.FORM);

        if (files != null) {
            for(int i=0;i

 

你可能感兴趣的:(android开发)