Загрузка массива файлов на сервер с помощью Retrofit - PullRequest
0 голосов
/ 16 марта 2020

Apis для приложения уже разработан. API работает на POSTMAN. POSTMAN Тело запроса Я не могу понять, как сделать то же самое в android, используя модификацию. Я пробовал список массивов. Каждый раз я получаю одно и то же сообщение об ошибке. {"error":true,"errorMsg":"The images must be an array."} APi отлично работает в почтальоне.

Мой код

Мой интерфейс

@Multipart
@POST("upload/prescription")
fun uploadPrescription(
    @Query("token") token: String,
    @Part image: List<MultipartBody.Part>): Call<RequestBody>

Мой код для вызова на сервер

 val file = File(imageUri.toString())
 val requestBody:RequestBody = RequestBody.create("image/*".toMediaTypeOrNull(),file)

 val multiType = ArrayList<MultipartBody.Part>()

 multiType.add(MultipartBody.Part.createFormData("images","123456",requestBody))

 val call = RetrofitClient.getApiWithGson().uploadPrescription(SharedPref.getIsToken(this@AttachPrescription).toString(),multiType)

    call.enqueue(object : Callback<RequestBody> {
        override fun onFailure(call: Call<RequestBody>, t: Throwable) {
            Log.d("Failure",t.message.toString())
        }

        override fun onResponse(call: Call<RequestBody>, response: Response<RequestBody>) {
            Log.d("Response Upload",response.body().toString())
        }

    })

И я получил вывод

Response Upload: {"error":true,"errorMsg":"The images must be an array."}

Пожалуйста, попробуйте помочь мне, это было бы очень полезно. Спасибо

Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...