Client
Introduction
Amper
To use Ktor Client in your project, you need to include the appropriate dependencies in your module.yaml file:
Client
import io.ktor.client.*
import io.ktor.client.engine.cio.*
import io.ktor.client.request.*
import io.ktor.client.statement.*
suspend fun main() {
val client = HttpClient(CIO)
val response: HttpResponse = client.get("https://ktor.io/")
println(response.status)
client.close()
}In Ktor, a client is represented by the HttpClient class.
Use the HttpClient.get() method to make a GET request.
A response will be received as a HttpResponse class object.
Content negotiation and serialization
ContentNegotiation
The ContentNegotiation plugin serves two primary purposes:
-
Negotiating media types between the client and server. For this, it uses the
AcceptandContent-Typeheaders. -
Serializing/deserializing the content in a specific format when sending requests and receiving responses. Ktor supports the following formats out-of-the-box: JSON, XML, CBOR, and ProtoBuf.
To use ContentNegotiation, you need to include the ktor-client-content-negotiation artifact in the build script:
io.ktor:ktor-client-content-negotiation:$ktor_versionNote that serializers for specific formats require additional artifacts. For example, kotlinx.serialization requires the ktor-serialization-kotlinx-json dependency for JSON. Depending on the included artifacts, Ktor chooses a default serializer automatically. If required, you can specify the serializer explicitly and configure it.
(keep reading) Serialitzation
Estás leyendo una vista previa.
Inicia sesión con Google para leer la página completa. Una cuenta de Google incluye 5 páginas gratuitas en total; el alumnado y el profesorado leen las páginas de su curso sin límite.
Iniciar sesión