Size bir API kullanırken en iyi uygulamaları göstereceğim.Bu yazımızda Alamofire gibi bir kitaplık kullanmayacağız çünkü API çağrısı gibi basit eylemler için harici bir kitaplığa ihtiyacınız yoktur.
Alamofire kullanışlıdır ve her şeyi daha hızlı hale getirir ancak sahip olduğu tüm özelliklere her zaman ihtiyaç duymazsınız ve projenize çok fazla bağımlılık eklemek istemezsiniz.
Bazı temel API çağrılarıyla uğraşmanız gerektiğinde, yerleşik URLSession işi halledecektir.
Bir API'den JSON verilerini almak için basit bir istekte bulunarak başlayalım. Bu isteği URLSession ile oluşturabiliriz.
İşte kod:
Öncelikle URL'mizi bir String ile oluşturuyoruz, ardından bir tamamlama işleyicisinde gerekirse verileri, yanıtı ve hataları döndürmek için URLSession kullanıyoruz.(data, res, err)
Ardından veriyi oluşturduğumuz bir yapıya dönüştürüyoruz. Bu yapı, Codable'dan miras alır ve temelde, JSON'un tüm özelliklerini türleriyle birlikte içerir. Ve iç içe geçmiş her JSON için, verilerini özelliklerin adı ve türleriyle açıklamak için başka bir yapı oluşturmanız gerekir. Decoder kullanılarak verileri çözümlemekteyiz.
Bu kod çalışıyor ancak bir sorunu vardır.
Verileri bir Tablo Görünümünde görüntülememiz gerekirse, URLSession sona erdiğinde verileri yeniden yüklemem gerekir. Ancak bizim kodumuzla yapılamaz. Verileri yeniden yüklemeden önce URLSession'ın bitmesini bekleyemeyiz ve 42. satırdaki verileri yeniden yükleyemeyiz, bu bir hata verecektir.
Bir tamamlama işleyicisi eklemeliyiz.
Daha başarılı şekilde çalışacaktır.
JSON'ı bir API'ye gönderme
0 Yorumlar
Bizimle fikirlerinizi paylaşabilirsiniz.