JSON support using kotlinx.serialization

预计阅读时间:1分钟

SerializationConverter功能使您可以使用kotlinx.serialization库轻松地在应用程序中处理JSON内容.

此功能是ContentNegotiation转换器.

此功能定义在类io.ktor.serialization.SerializationConverter在神器io.ktor:ktor-serialization:$ktor_version .
dependencies { implementation "io.ktor:ktor-serialization:$ktor_version" }
dependencies { implementation("io.ktor:ktor-serialization:$ktor_version") }
<project> ... <dependencies> <dependency> <groupId>io.ktor</groupId> <artifactId>ktor-serialization</artifactId> <version>${ktor.version}</version> <scope>compile</scope> </dependency> </dependencies> </project>

Basic usage

通过使用kotlinx.serialization注册JSON内容转换器来安装功能:

install(ContentNegotiation) {
    serialization()
}

Configuration

serialization()函数具有两个带有默认参数的可选参数:

  • contentType提供一种指定应处理的内容类型的方法,默认情况下为ContentType.Application.Json .
  • json提供了默认配置JSON格式化程序 Json(DefaultJsonConfiguration)的功能.

高级示例:

install(ContentNegotiation) {
    serialization(
        contentType = ContentType.Application.Json,
        json = Json(
            DefaultJsonConfiguration.copy(
                prettyPrint = true
            )
        )
    )
}

by  ICOPY.SITE