private fun HttpRequestData.convertToOkHttpRequest(callContext: CoroutineContext): Request { val builder = Request.Builder() with(builder) { url(url.toString()) forEachHeader(::addHeader) val bodyBytes = if (HttpMethod.permitsRequestBody(method.value)) { body.convertToOkHttpBody(callContext) } else { null } method(method.value, bodyBytes) } return builder.build() }