Как загрузить файл изображения из ImageView на сервер nodejs (multer) с помощью okhttp?Котлин - PullRequest
0 голосов
/ 10 июня 2019

Я написал код для загрузки изображений на сервер с помощью okhttp и kotlin, то есть пользователь делает снимок через камеру, затем отображает изображение в imageView, когда пользователь нажимает кнопку отправки, я хочу изображение из ImageViewчтобы быть отправленным на сервер, но я не знаю, как изменить изображение из ImageView на файл, который можно отправить на сервер, см. мой код для более подробной информации

это мой код Котлина

 fun uploadImage(url:String, image:File, imageName:String){
    val MEDIA_TYPE_PNG = MediaType.parse("image/png")
    val client = OkHttpClient()

    val requestBody = MultipartBody.Builder().setType(MultipartBody.FORM)
        .addFormDataPart("file", imageName, RequestBody.create(MEDIA_TYPE_PNG, image))
        .build()

    val request = Request.Builder()
        .url(url)
        .post(requestBody)
        .build()

    client.newCall(request).enqueue(object:Callback{
        override fun onFailure(call: Call, e: IOException) {

        }

        override fun onResponse(call: Call, response: Response) {
            Log.i(TAG,"response ${response.body?.string()}")
        }
    })
}

Вопрос в том, как преобразовать изображение из imageView в "image: File" для функции uploadImage?

...