Json ile veri çekme işlemi her uygulamamızda ihtiyaç duyabileceğimiz bir konu. Json ile ilgili notumu da buraya bırakıyorum. Veri çekeceğimiz site SSL kullanmıyorsa, https yerine http protokolü ile bağlanmak zorundaysak, info.plist dosyasında bazı konfigrasyonlar yapmamız gerekmektedir.
HTTP Ayarı
info.plist içerisinde App Transport Security Settings altında yeni bir item ekleyerek Allow Arbitarary Loads : YES değerini girmeliyiz.
Json Getirme ve Parse Etme
let url = URL(string: "http://data.fixer.io/api/latest?access_key=55196be8be63f0c8ea98df28177c5cdf") let session = URLSession.shared let task = session.dataTask(with: url!) { (data, response, error) in if error != nil { print("URL'den Veri Çekilemedi!") }else{ if data != nil { do { let jsonArray = try JSONSerialization.jsonObject(with: data!, options: JSONSerialization.ReadingOptions.mutableContainers) as! Dictionary<String, Any> DispatchQueue.main.async { if let rates = jsonArray["graphql"] as? [String : Any]{ if let rates = rates["user"] as? [String : Any]{ print(rates["TRY"]!) } } } } catch { } } } } task.resume()
Son Yorumlar