Integre a serialização ao Ktor
Instale ContentNegotiation para decodificação automática
Integre a serialização ao Ktor é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Stop Parsing by Hand
You could decode every response manually, but Ktor can wire serialization in so requests and replies become typed automatically.
Meet ContentNegotiation
The ContentNegotiation plugin teaches the HttpClient how to convert request and response bodies to and from your models.
Add the Dependency
First add the Ktor content-negotiation artifact plus the JSON serializer module to commonMain.
implementation("io.ktor:ktor-client-content-negotiation:2.3.12")Add the JSON Bridge
You also include the ktor-serialization-kotlinx-json module, which connects Ktor to kotlinx.serialization specifically.
implementation("io.ktor:ktor-serialization-kotlinx-json:2.3.12")Install on the Client
Inside the HttpClient builder you install ContentNegotiation and register the json converter once.
install(ContentNegotiation) { json() }Configure the Json
The json block accepts a configured Json instance, so you can pass ignoreUnknownKeys and friends right here.
json(Json { ignoreUnknownKeys = true })Decode Automatically
Now a GET can return your model directly. Ktor reads the body and hands you a typed object with no manual decode call.
val user: User = client.get(url).body()Encode Request Bodies
The same plugin serializes outgoing data, so you can setBody with a Kotlin object and Ktor writes the JSON for you.
post(url) { setBody(user) }Set the Content Type
When sending a body, declare contentType as application/json so the server reads it correctly.
contentType(ContentType.Application.Json)One Setup, Both Apps
Because all of this lives in commonMain, Android and iOS share the identical typed networking with zero duplicate code.
Clean End to End
Ktor plus serialization gives you a tidy pipeline: call an endpoint, get a model, send a model, all type-safe across platforms.
Quick Check
Which Ktor plugin enables automatic JSON decoding of responses?
Recap
Install ContentNegotiation with json() on your HttpClient so Ktor auto-encodes request bodies and decodes responses into typed models on both apps.
Perguntas Frequentes
A aula “Integre a serialização ao Ktor” é grátis?
Sim — o texto completo de “Integre a serialização ao Ktor” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
O que vou aprender em “Integre a serialização ao Ktor”?
Instale ContentNegotiation para decodificação automática Você pratica Kotlin Multiplatform Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Kotlin Multiplatform Academy?
Nenhuma experiência prévia é necessária. Kotlin Multiplatform Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Integre a serialização ao Ktor”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Kotlin Multiplatform Academy?
Sim. Cada aula de Kotlin Multiplatform Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Modelos de dados @Serializable
- @SerialName e mapeamento personalizado de campos
- Campos anuláveis, padrão e opcionais
- Integre a serialização ao Ktor