Я пытаюсь загрузить файлы на сервер, используя Retrofit 2 с запросом PUT.
Вот как я это делаю:
@Multipart
@PUT
Call<Void> uploadFile(@Url String presignedUrl, @Part MultipartBody.Part file, @Part("file") RequestBody name);
Загрузить текстовый файл:
FileWriter writer = new FileWriter(m_capturedFile);
writer.append(m_weakActivity.get().m_addContentNoteEdit.getText().toString());
writer.flush();
writer.close();
RequestBody requestBody = RequestBody.create(MediaType.parse("*/*"), m_capturedFile);
MultipartBody.Part fileToUpload = MultipartBody.Part.createFormData("file", m_capturedFile.getName(), requestBody);
RequestBody filename = RequestBody.create(MediaType.parse("text/plain"), m_capturedFile.getName());
response = FileUploadApiWrapper.getService().uploadFile(predefinedUrl, fileToUpload,filename).execute();
Проблема в том, что я создаю и сохраняю файл в Android файловая система, файл создан правильно. Однако, когда я загружаю его, к файлу добавляются некоторые заголовки, дающие файл следующим образом: -
--292211e9-3b63-4b3e-8f49-bc75605656ac
Content-Disposition: form-data; name="file"; filename="TXT15782900294806741473599448458222.txt"
Content-Type: */*
Content-Length: 11
Sample text for testing
--292211e9-3b63-4b3e-8f49-bc75605656ac
Content-Disposition: form-data; name="file"
Content-Transfer-Encoding: binary
Content-Type: text/plain; charset=utf-8
Content-Length: 39
TXT15782900294806741473599448458222.txt
--292211e9-3b63-4b3e-8f49-bc75605656ac--
Как я могу решить эту проблему, когда загружается правильное содержимое файла?
Любая помощь приветствуется .