Commit 5d8ae7c7 by Aleksandr

Change multipart to application/octet-stream

parent cc12e8e8
...@@ -3,7 +3,11 @@ package com.isidroid.job_sender.data.source.remote ...@@ -3,7 +3,11 @@ package com.isidroid.job_sender.data.source.remote
import com.isidroid.job_sender.data.source.remote.api.ApiCommand import com.isidroid.job_sender.data.source.remote.api.ApiCommand
import com.isidroid.job_sender.data.source.remote.api.ApiUpload import com.isidroid.job_sender.data.source.remote.api.ApiUpload
import com.isidroid.network.ProgressEmittingRequestBody import com.isidroid.network.ProgressEmittingRequestBody
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.MediaType.Companion.toMediaTypeOrNull
import okhttp3.MultipartBody import okhttp3.MultipartBody
import okhttp3.RequestBody
import okhttp3.RequestBody.Companion.asRequestBody
import java.io.File import java.io.File
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton
...@@ -15,9 +19,8 @@ class SendJobNetworkSource @Inject constructor( ...@@ -15,9 +19,8 @@ class SendJobNetworkSource @Inject constructor(
) { ) {
fun uploadPage(jobId: String, token: String, filePath: String): Boolean { fun uploadPage(jobId: String, token: String, filePath: String): Boolean {
val file = File(filePath) val file = File(filePath)
val requestBody = ProgressEmittingRequestBody("image/*", file) val requestBody = file.asRequestBody("application/octet-stream".toMediaType())
val fileBody = MultipartBody.Part.createFormData("file", file.name, requestBody) val response = apiUpload.upload(jobId = jobId, token = token, requestBody).execute()
val response = apiUpload.upload(jobId = jobId, token = token, fileBody).execute()
return response.isSuccessful return response.isSuccessful
} }
......
package com.isidroid.job_sender.data.source.remote.api package com.isidroid.job_sender.data.source.remote.api
import okhttp3.MultipartBody import okhttp3.RequestBody
import okhttp3.ResponseBody import okhttp3.ResponseBody
import retrofit2.Call import retrofit2.Call
import retrofit2.http.Body
import retrofit2.http.Header import retrofit2.http.Header
import retrofit2.http.Multipart import retrofit2.http.Headers
import retrofit2.http.POST import retrofit2.http.POST
import retrofit2.http.Part
import retrofit2.http.Path import retrofit2.http.Path
interface ApiUpload { interface ApiUpload {
@Multipart
@POST("api/page/{jobId}") @POST("api/page/{jobId}")
@Headers("Content-Type: application/octet-stream")
fun upload( fun upload(
@Path("jobId") jobId: String, @Path("jobId") jobId: String,
@Header("X-Access-Token") token: String, @Header("X-Access-Token") token: String,
@Part body: MultipartBody.Part @Body body: RequestBody
): Call<ResponseBody> ): Call<ResponseBody>
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment