CodeBlanks Logo Icon CodeBlanks

GET

client.get ile GET isteği öğrenirsin.

GET isteği

Bir GET isteği, bir kaynağı sunucudan alır. Ktor'da client.get(url) ile yapılır; dönüş HttpResponse'dur.

Örnek: val response = client.get("https://api.example.com/users"). Yanıttan gövdeyi response.body<String>() ile alırsın. Sorgu parametreleri url { parameters.append("id", "1") } bloğuyla eklenir. GET, veri okumak için kullanılır; gövde taşımaz. Yanıtın durum kodu response.status ile okunur.

Sorgu parametreleri

Bir GET isteğine sorgu parametresi eklemek için url bloğu kullanılır. Bu blokta parameters.append ile anahtar-değer çifti eklersin.

Örnek: client.get("https://api.example.com/users") { url { parameters.append("page", "1") } }. Bu çağrı URL'yi otomatik olarak ?page=1 sonekiyle tamamlar. Birden fazla parametre eklemek için arka arkaya append yapılır. URL'yi elle birleştirmek yerine bu blok kullanılırsa kod daha okunaklı olur ve kaçış karakterleri otomatik eklenir.

Uygulama GET isteği yapıp yazdır

Bir HttpClient oluştur. val response = client.get("https://api.example.com/users") ile GET isteği yap. println("İstek gönderildi") yazdır. Sonra client.close() ile kapat.

Başlangıç kodu

Main.kt
// GET isteği
// buraya yaz
import io.ktor.client.*
import io.ktor.client.request.*

fun main() {
    
}

Örnek çözüm

Main.kt
fun main() {
    val client = HttpClient()
    val response = client.get("https://api.example.com/users")
    println("İstek gönderildi")
    client.close()
}

Beklenen çıktı

İstek gönderildi

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 GET parçalarını eşle

Kavram Anlamı
client.get İstek atar
HttpResponse Dönüş türü
.body() Gövde alır
url Adres

2 client.get(url) çağrısı ne döndürür?

  • Int
  • String
  • HttpResponse Doğru cevap
  • Unit

Açıklama: GET çağrısı HttpResponse döndürür.

3 body çağrısını tamamla

Soru
val response = client.get(url)
val body: String = response.____()
Cevap
val response = client.get(url)
val body: String = response.body()

Açıklama: response.body() gövdeyi verir.

İleri seviye bölümündeki tüm dersler