API çağrısı
- Flutter kursu
- Orta seviye
- Ders 62/99
- 4 dk
http.get ile hava durumu API'sine istek atarsın.
http.get ile istek
Hava durumu verisini bir API'den çekmek için http paketinin get fonksiyonunu kullanırsın. Bu fonksiyon bir Future<Response> döndürür; await ile bekleyip response.body ile JSON dizesine erişirsin.
import 'package:http/http.dart' as http;
Future<String> havaGetir() async {
final uri = Uri.parse('https://api.example.com/hava/istanbul');
final response = await http.get(uri);
return response.body;
}Uri.parse ile URL
http.get bir Uri bekler; düz dizeyi Uri.parse ile Uri'ye çevirirsin. URL'yi doğru biçimlendirmek isteklerin başarılı olmasını sağlar.
final uri = Uri.parse('https://api.example.com/hava/ankara');
final response = await http.get(uri);
print(response.statusCode); // 200Uygulama havaDurumuGetir fonksiyonu
havaDurumuGetir adında async bir fonksiyon yaz. Uri.parse ile URL'yi Uri'ye çevir, http.get ile istek at ve response.body'yi döndür. main içinde URL'yi Uri.parse ile çözüp yazdır.
Başlangıç kodu
import 'package:http/http.dart' as http;
// havaDurumuGetir fonksiyonunu yaz
// Uri.parse ile URL'yi çevir
// http.get ile isteği at ve response.body'yi döndür
void main() {
// URL'yi Uri.parse ile çöz ve yazdır
}Örnek çözüm
import 'package:http/http.dart' as http;
Future<String> havaDurumuGetir() async {
final uri = Uri.parse('https://api.example.com/hava/istanbul');
final response = await http.get(uri);
return response.body;
}
void main() {
final uri = Uri.parse('https://api.example.com/hava/istanbul');
print(uri);
}Beklenen çıktı
https://api.example.com/hava/istanbul
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 http.get çağrısı ne döndürür?
- Future<Response> Doğru cevap
- Widget
- void
- String
Açıklama: http.get bir Future<Response> döndürür; await ile bekleyince Response nesnesini alırsın. void dönüş değeri yoktur, String doğrudan değildir (response.body ile erişilir), Widget arayüz içindir.
2 http.get çağrısı
import 'package:http/http.dart' as http;
Future<String> getir() async {
final uri = Uri.parse('https://api.example.com/hava/izmir');
final response = await ____;
return response.body;
}
import 'package:http/http.dart' as http;
Future<String> getir() async {
final uri = Uri.parse('https://api.example.com/hava/izmir');
final response = await http.get(uri);
return response.body;
}
Açıklama: http.get bir Uri alır ve istek atar; await ile Response beklenir. post farklı bir istektir, boş çağrı eksiktir, jsonDecode URI almaz.
3 http paketi parçaları
| Kavram | Anlamı |
|---|---|
http.get |
API'ye istek atar |
Uri.parse |
dizeyi Uri'ye çevirir |
response.body |
yanıt gövdesi |
await |
Future'ı bekler |