美文网首页
Retrofit2 + Rxjava 图片上传

Retrofit2 + Rxjava 图片上传

作者: 郭某人1 | 来源:发表于2018-04-11 16:07 被阅读20次

    /**
    * 多图上传
    */

        Map<String, RequestBody> requestBodyMap = new HashMap<>();
        for (int i = 0; i < fileNames.size(); i++) {
            File file = new File(fileNames.get(i));
            RequestBody requestBody = RequestBody.create(MediaType.parse("image/png"), file);
            // 这里前面一部分是服务器要求传的key("file"),加上一个i,就可以动态设置key的长度
            requestBodyMap.put("file" + i + "\"; filename=\"" + file.getName(), requestBody);
        }
        Observable<Response<Void>> observable = BaseUrlApi.getApiBaseService().uploadFile(requestBodyMap, feedbackBean.getId(), 0);
        HttpMethods.toSubscribe(observable, new BaseObserver<Response<Void>>(getSupportFragmentManager()) {
            @Override
            protected void onBaseNext(Response<Void> data) {
                commitSuccess();
            }
    
            @Override
            protected void onBaseError(Throwable t) {
                super.onBaseError(t);
            }
        });
    }
    

    /**
    * 多图上传接口
    */

    @Multipart
    @POST("feedbacks/uploadFile")
    Observable<Response<Void>> uploadFile(@PartMap Map<String, RequestBody> requestBodyMap, @Query("feedbackId") int feedbackId, @Query("fileType") int fileType);
    

    https://blog.csdn.net/danceinkeyboard/article/details/78096926

    http://simontse.github.io/2016/06/07/RRUploadPic/

    相关文章

      网友评论

          本文标题:Retrofit2 + Rxjava 图片上传

          本文链接:https://www.haomeiwen.com/subject/lohzhftx.html