CodeBlanks Logo Icon CodeBlanks

API yanıtı tipi

API yanıt tipini interface ile yazarsın.

API yanıtı tipi nedir?

Bir hava durumu API'sinden gelen veri genellikle sabit bir yapıya sahiptir. Bu yapıyı bir interface ile tanımlarsın. Bazen API bazı alanları göndermeyebilir; bu durumda o alanları opsiyonel olarak işaretlersin. Böylece hem gerçek API verisi hem de eksik yanıtlar tür güvenli şekilde ele alınır.

interface ApiYanit {
  sehir: string;
  sicaklik: number;
  nem?: number;
}

Zorunlu ve opsiyonel alanlar

Bir API yanıtında her zaman bulunan alanlar zorunludur ve : ile bildirilir. Bazen gönderilmeyebilen alanlar ise ? ile opsiyonel yapılır. Örneğin şehir her zaman gelir ama nem oranı bazı yanıtlarda olmayabilir. Bu ayrım, veri tutarlılığını korur.

interface ApiYanit {
  sehir: string;     // zorunlu
  sicaklik: number;  // zorunlu
  nem?: number;      // opsiyonel
}

Uygulama API yanıtı interface'i

ApiYanit interface'i tanımla: sehir: string ve sicaklik: number zorunlu, nem?: number opsiyonel olsun. y adında bir ApiYanit nesnesi oluştur; yalnızca sehir: "İzmir" ve sicaklik: 25 ver. y.sehir değerini console.log ile yazdır.

Başlangıç kodu

index.ts
// ApiYanit interface tanımla
// sehir ve sicaklik zorunlu, nem opsiyonel olsun
// y nesnesi oluştur, sadece sehir ve sicaklik ver
// y.sehir yazdır

Örnek çözüm

index.ts
interface ApiYanit {
  sehir: string;
  sicaklik: number;
  nem?: number;
}
const y: ApiYanit = { sehir: "İzmir", sicaklik: 25 };
console.log(y.sehir);

Beklenen çıktı

İzmir

Soru ve cevaplar

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

1 API yanıtında bazen bulunmayabilen bir alan nasıl işaretlenir?

  • void ile
  • const anahtar kelimesi ile
  • readonly ile
  • ? ile opsiyonel yapılır Doğru cevap

Açıklama: Opsiyonel alanlar ? işareti ile belirtilir; bu alan yoksa undefined kabul edilir ve derleme hatası vermez.

2 Opsiyonel alan işareti

Soru
interface ApiYanit {
  sehir: string;
  nem____: number;
}
Cevap
interface ApiYanit {
  sehir: string;
  nem?: number;
}

Açıklama: Opsiyonel bir alanı bildirmek için alan adından sonra ? işareti konur; bu alan yoksa undefined kabul edilir.

3 API yanıtı kavramları

Kavram Anlamı
interface Yapı tanımı
? Opsiyonel alan işareti
nem Nem oranı alanı
yanit API dönüş verisi

Orta seviye bölümündeki tüm dersler