【问题标题】:JsonFeature for Ktor Client is unresolvedKtor 客户端的 JsonFeature 未解决
【发布时间】:2021-05-03 05:43:48
【问题描述】:

我正在 android 中启动基于 Ktor 的客户端,我想使用任何序列化程序,目前,来自 kotlinx 的序列化程序,但其他序列化程序的结果相同 - 未找到 JsonFeature(在下面的 sn-p 中突出显示)。我错过了什么?

class StreamClient {
    val client: HttpClient
    init {
        client = HttpClient(Android) {
            install(JsonFeature) {
                serializer = KotlinxSerializer()
            }
        }
    }
}

分级:

implementation("io.ktor:ktor-client-core:$ktor_version")
implementation("io.ktor:ktor-client-android:$ktor_version")
implementation("io.ktor:ktor-client-serialization:$ktor_version")
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.0.0")

【问题讨论】:

  • 看来我的说法是错误的——如果我使用 GSON 序列化程序,就会找到 JsonFeature。我想我需要一个完整的多平台设置才能使用 kotlin x 序列化程序。
  • 这里一样,但为什么?好像kotlinx有JVM branch,但是JsonFeature还是不可用……郁闷。

标签: android json kotlin ktor


【解决方案1】:

这与您的问题完全无关,但由于 Ktor 2.0 JsonFeature 已被弃用,取而代之的是 ContentNegotation

install(ContentNegotiation) {
    json()
}

https://ktor.io/docs/eap/serialization-client.html#install_plugin

【讨论】:

    【解决方案2】:

    Json documentation 中描述的所有依赖项都公开了包含JsonFeaturektor-client-json 模块的API。

    【讨论】:

      猜你喜欢
      • 2019-05-10
      • 1970-01-01
      • 2019-03-10
      • 2020-06-23
      • 2018-11-22
      • 2021-09-12
      • 2020-02-25
      • 2020-04-15
      • 2019-12-07
      相关资源
      最近更新 更多