• retrofit post请求多文件,partMap用法


    1. APIService 定义注解

    @Multipart
        @POST("cyxx/Feedback/add.do")
        Observable<ResponseBody> getFeedbackResult(
                @PartMap Map<String, RequestBody> params
        );

    2.代码里使用

    Map<String, RequestBody> map = new HashMap<>();
    //text属性如何放入
    map.put("name",RxPartMapUtils.toRequestBodyOfText(mAccount));
    
    //file属性如何放入
       for (String _selectedPhoto : pSelectedPhotos) {
                File _file = new File(_selectedPhoto);
                Log.e(TAG,"file"+_file.exists());
                if(_file.exists()) {
                  RequestBody _requestBody =              RxPartMapUtils.toRequestBodyOfImage(_file);
                  Log.e(TAG,"file:"+_file.getName());
                  map.put("file"; filename=""+_file.getName()+"", _requestBody);
                }
            }

    3.RxPartMapUtils方法

       public static RequestBody toRequestBodyOfText (String value) {
            RequestBody body = RequestBody.create(MediaType.parse("text/plain"), value);
            return body ;
        }
    
      public static RequestBody toRequestBodyOfImage(File pFile){
    
            RequestBody fileBody = RequestBody.create(MediaType.parse("image/*"), pFile);
            return fileBody;
        }
  • 相关阅读:
    Search Insert Position
    *Set Matrix Zeroes
    Spiral Matrix II
    *Spiral Matrix
    combination的eclipse运行结果
    [?]*Combination(递归调用好难)
    [?]*Subset
    *3Sum Closest
    Why am I getting an Unreachable Statement error in Java?
    windows下,emacs的配置文件在哪儿?
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/7602171.html
Copyright © 2020-2023  润新知