Json Veri Çekmek Örnek 2

Merhaba arkadaşlar. Bu yazımda çokça mail aldığım bir konunun başka bir örneğinden bahsedeceğim. Json veri çekmek. Json veri çekmenin ne kadar önemli olduğunu ya da niye Json veri çekmemizin ihtiyaç olduğundan bu yazımda bahsetmeyeceğim. Daha önce ki yazıma buradan ulaşabilirsiniz.

Bir arkadaşımız URL paylaşarak burada ki verilerden örnek alarak yapabilir misiniz diye rica etti. Bende bu URL’den örnek olarak yapacağım.

URL’e gidiyoruz ve buradaki tüm verileri bu adrese yapıştırıyoruz. Bu adres, bizim json verilerimizi bir modele dönüştürüyor. Bu modeli de projemize dahil ediyoruz.

Sonrasında ise URL’den verileri çekip, projemizde ki modele dönüştürmemiz gerekiyor. Tabi bunun için bir de servis yazmamız lazım. Serviste kullanmamız için Newtonsoft.Json paketini kurmalıyız. Servisin içinde ilk olarak URL’imizi belirtmemiz gerekiyor. Url’i belirttikten sonra bir HttpClient oluşturmalıyız. Biz bu client ile bir Url’den verileri çekebiliriz. Tabi json verileri çekeceğimiz için bunu oluşturduğumuz client’e söylememiz gerekiyor. Ardından verileri çekme fonksiyonunu yazmamız kalıyor sadece. Benim bu fonksiyonum geriye liste şeklinde gelen modellerimi döndürmeli ve Url’den verileri de çekeceğimiz için asenkron bir yapıda olmalı. Ardından işlemleri yapmaya başlayabiliriz. Oluşturduğumuz Client’e belirttiğimiz adreste ki verileri string olarak oku demeliyiz. Yani Url’de bulunan her şeyi bana string olarak getir diyoruz ve bunu bir result adlı değişkene atıyorum. Sonrasında ise yüklemiş olduğum Newtonsoft.Json paketimin yardımıyla deserialize yaparak liste şeklinde modellerime dönüştürüyorum. Aslında olayımız bu kadar basit.

Servisi yazdıktan sonra artık geriye sadece bunu kullanmamız gerekiyor. Ben bir Xamarin projesinde kullanıyorum. Zaten buraya kadar olan her şey ortak. Bu yüzden tüm projelerinizde kullanabilirsiniz. Servis çağırımı içinde bir ServiceManager oluşturuyorsunuz ardından bu manager ile oluşturmuş olduğum fonksiyonu çağırarak bir değişkene atıyorum.

Sonrasında gelen verilerime baktığımda 22 adet olduğunu görüyorum.

Listenin içerisinde herhangi bir objeyi incelediğimde verilerin doğru bir şekilde geldiğini görüyorum.

Sorularınız olursa mail veya yorum atarak ulaşabilirsiniz. İyi çalışmalar.

Leave a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.