私はRetrofit
を使用してファイルをアップロードするために使用RequestBody
コードです:ファイル名をエンコードするには
RequestBody lRequestBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
MultipartBody.Part lFile = MultipartBody.Part.createFormData("file", file.getName(), lRequestBody);
MultipartBody.Part title = MultipartBody.Part.createFormData("title", file.getName());
MultipartBody.Part lFilenamebase64 = MultipartBody.Part.createFormData("filenamebase64", base64EncodedFileName);
:
String base64EncodedFileName = Base64.encodeToString(file.getName().getBytes(Charsets.UTF_8), Base64.URL_SAFE | Base64.NO_WRAP);
私はのようなAPIを定義した:
@Multipart
@POST("/upload")
Observable<Response<ResponseBody>> uploadFile(@Part MultipartBody.Part file, @Part MultipartBody.Part title, @Part MultipartBody.Part base64EncodedFileName);
私はそれがあなたを助けてくれることを願っています。
Gsonでオブジェクトを作成しようとしているときに問題が発生しましたか? – barotia