Satır satır kod yazılışını izleyin ve her satırın açıklamasını dinleyin.
Dio configuration
— REST API Entegrasyonu ve HTTP İstekleri içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
=
Sağdaki değeri soldaki isme bağlar.
(
Çağrıyı veya gruplamayı başlatır.
)
Çağrıyı veya gruplamayı bitirir.
{
Bir blok kapsamı açar.
}
Açılan bloğu kapatır.
;
İfadenin bittiğini bildirir (dile göre zorunlu olabilir).
Satır sonu noktalı virgül ya da kapanış işareti unutulur final dio = Dio(BaseOptions(baseUrl: "https://api.example.com", connectTimeout: Duration(seconds: 5), receiveTimeout: Duration(seconds: 10), headers: {"Content-Type": "application/json"}));
kod parçası
{
"type": "ExpressionStatement",
"expression": "HTTP istemcisi yapılandırması."
}
Interceptor
— sonuç/hata dönüşü backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
=
Sağdaki değeri soldaki isme bağlar.
(
Çağrıyı veya gruplamayı başlatır.
)
Çağrıyı veya gruplamayı bitirir.
{
Bir blok kapsamı açar.
}
Açılan bloğu kapatır.
;
İfadenin bittiğini bildirir (dile göre zorunlu olabilir).
Satır sonu noktalı virgül ya da kapanış işareti unutulur Tanımsız isim ya da yanlış yazılmış fonksiyon çağrılır dio.interceptors.add(InterceptorsWrapper(onRequest: (options, handler) { options.headers["Authorization"] = "Bearer ${getToken()}"; return handler.next(options); }, onError: (error, handler) { if (error.response?.statusCode == 401) { refreshToken(); } return handler.next(error); }));
kod parçası
{
"type": "ExpressionStatement",
"expression": "Her isteği yakalar."
}
GET isteği
— REST API Entegrasyonu ve HTTP İstekleri içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
=
Sağdaki değeri soldaki isme bağlar.
(
Çağrıyı veya gruplamayı başlatır.
)
Çağrıyı veya gruplamayı bitirir.
{
Bir blok kapsamı açar.
}
Açılan bloğu kapatır.
;
İfadenin bittiğini bildirir (dile göre zorunlu olabilir).
Satır sonu noktalı virgül ya da kapanış işareti unutulur final response = await dio.get("/urunler", queryParameters: {"kategori": "elektronik", "sayfa": 1});
kod parçası
{
"type": "ExpressionStatement",
"expression": "Veri çeker."
}
POST isteği
— REST API Entegrasyonu ve HTTP İstekleri içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
=
Sağdaki değeri soldaki isme bağlar.
(
Çağrıyı veya gruplamayı başlatır.
)
Çağrıyı veya gruplamayı bitirir.
{
Bir blok kapsamı açar.
}
Açılan bloğu kapatır.
;
İfadenin bittiğini bildirir (dile göre zorunlu olabilir).
Satır sonu noktalı virgül ya da kapanış işareti unutulur final response = await dio.post("/siparis", data: {"urunId": 1, "adet": 2});
kod parçası
{
"type": "ExpressionStatement",
"expression": "Veri gönderir."
}
Model sınıfı
— REST API Entegrasyonu ve HTTP İstekleri içindeki bu kod satırı backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
=
Sağdaki değeri soldaki isme bağlar.
(
Çağrıyı veya gruplamayı başlatır.
)
Çağrıyı veya gruplamayı bitirir.
{
Bir blok kapsamı açar.
}
Açılan bloğu kapatır.
;
İfadenin bittiğini bildirir (dile göre zorunlu olabilir).
Tanımsız isim ya da yanlış yazılmış fonksiyon çağrılır class Urun { final String id; final String isim; final double fiyat; const Urun({required this.id, required this.isim, required this.fiyat}); factory Urun.fromJson(Map<String, dynamic> json) => Urun(id: json["id"], isim: json["isim"], fiyat: json["fiyat"].toDouble()); Map<String, dynamic> toJson() => {"id": id, "isim": isim, "fiyat": fiyat}; }
kod parçası
{
"type": "ExpressionStatement",
"expression": "JSON serializasyonu."
}
Hata yönetimi
— sonuç/hata dönüşü backend kodunun bir parçasıdır; ilgili girdiyi alır, dönüştürür ve sonraki adıma aktarır.
=
Sağdaki değeri soldaki isme bağlar.
(
Çağrıyı veya gruplamayı başlatır.
)
Çağrıyı veya gruplamayı bitirir.
{
Bir blok kapsamı açar.
}
Açılan bloğu kapatır.
;
İfadenin bittiğini bildirir (dile göre zorunlu olabilir).
try { final response = await dio.get("/veri"); return Urun.fromJson(response.data); } on DioException catch (e) { if (e.type == DioExceptionType.connectionTimeout) { throw NetworkException("Bağlantı zaman aşımı"); } rethrow; }
kod parçası
{
"type": "ExpressionStatement",
"expression": "API hatalarını yakalar."
}