diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/InternetUtils.kt b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/InternetUtils.kt index 54ae77165a..ccd8e9b632 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/InternetUtils.kt +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/InternetUtils.kt @@ -172,7 +172,8 @@ class InternetUtils { // Convert body string to RequestBody if allowed val requestBody: RequestBody? = if (body != null && method.uppercase() !in listOf("GET", "HEAD")) { - body.toRequestBody("application/octet-stream".toMediaType()) + val contentType = getHeader(requestHeaders, "content-type") ?: "application/octet-stream" + body.toRequestBody(contentType.toMediaType()) } else null // Configure HTTP method @@ -226,6 +227,16 @@ class InternetUtils { return result } + private fun getHeader(headers: Map, key: String): String? { + for (e in headers) { + if (e.key.equals(key, ignoreCase = true)) { + return e.value + } + } + + return null + } + /** * Creates an OkHttpClient that accepts all SSL certificates (insecure). */