接口:與改造上傳圖像2
@Multipart
@POST("emp/passportupload")
Single<ApiResponse> uploadPassportImage(@Query("passportnumber") String passportNumber, @Part MultipartBody.Part file);
調用API:
File file = new File(model.getImage().getPath());
if (!file.exists()) return null;
RequestBody requestBody = RequestBody.create(MediaType.parse("image/*"), file);
MultipartBody.Part filePart = MultipartBody.Part.createFormData(ApiConstant.PICTURE_UPLOAD_PARAM, file.getName(), requestBody);
dataService.uploadPassportImage(map, filePart)
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread());
我使用這個方法來上傳圖片到服務器,但服務器無法驗證它作爲一個圖像,因此給我一個迴應,如
「提供的文件不是有效的P icture。請提供PNG/JPG文件」
不過,我已經上傳過郵遞員相同的圖像文件,它是成功的這裏是要求:(注:passportnumber是一個參數,可以不是一個表單數據)
在我的情況,不同的是用戶ID不是從數據,它是一個PARAMS。我試過這個解決方案,並且因爲服務器找不到參數值而出現錯誤響應。 – CodeCameo