如何在 Ktor 客户端中设置内容类型字符集(不是接受字符集)
Posted
技术标签:
【中文标题】如何在 Ktor 客户端中设置内容类型字符集(不是接受字符集)【英文标题】:How do I set a Content Type Charset in Ktor client (Not an accept charset) 【发布时间】:2020-06-05 21:02:11 【问题描述】:这里是初学者,
有没有其他方法可以添加 Content-Type Charset 而不是 header("Content-Type", "application/json; charset=UTF-8")
?
val client = HttpClient
Charsets
Charsets.UTF_8
// This sets the accept header only, does not set the content type charset
client.put<HttpResponse>
contentType(ContentType.Application.Json)
url(url)
body =body
但是这有效
client.put<HttpResponse>
header("Content-Type", "application/json; charset=UTF-8")
contentType(ContentType.Application.Json)
url(url)
body = body
非常感谢。
【问题讨论】:
【参考方案1】:要使用 Ktor API 指定标头,您必须给它一个参数:
client.put<HttpResponse>
contentType(ContentType.Application.Json.withParameter("charset", "utf-8"))
url(url)
body = body
【讨论】:
以上是关于如何在 Ktor 客户端中设置内容类型字符集(不是接受字符集)的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Ktor 中设置类似于 Retrofit 的`Retrofit.Builder().baseUrl(baseUrl) 的 basePath?