我正在尝试使用 Ktor 的客户端库(1.4.1)在 Kotlin 中请求一个简单的 HTTP 资源:
//
// DomainSpecificObjectFactory.kt
//
object DomainSpecificObjectFactory {
private val client = HttpClient {
UserAgent("some user agent string")
}
suspend fun fromUrl(url: String): DomainSpecificObject = coroutineScope {
val pageHtml = client.get<String>(url)
val document = Jsoup.parse(pageHtml)
val objProps = getDomainSpecificProperties(document)
DomainSpecificObject(objProps)
}
}
//
// SomeOtherFile.kt
//
val obj = DomainSpecificObjectFactory.fromUrl("http://example.com/bla")
但是,我得到了这个例外:
org.apache.http.ConnectionClosedException: Premature end of chunk coded message body: closing chunk expected
我应该以不同的方式配置 HTTP 客户端吗?