Структура для API вложенного словаря в SwiftIOS

Программируем под IOS
Ответить
Anonymous
 Структура для API вложенного словаря в Swift

Сообщение Anonymous »

Я пытаюсь импортировать данные JSON из версии 2 API coinmarketcap. У меня он работал с v1, так как это был массив, однако новая версия представляет собой словарь, и я не могу получить правильную структуру.
Я использую API: https://api.coinmarketcap.com/ v2/ticker/?convert=AUD
Моя структура настроена, как показано ниже:

Код: Выделить всё

struct Coin: Decodable {
private enum CodingKeys: String, CodingKey {
case id = "rank", symbol, name, priceAUD = "quotes"
}
var id: String
var symbol : String
var name : String
var priceAUD : quoteStruct

}

struct quoteStruct{
let aud : priceStruct
}

struct priceStruct{
let price : String
}
Мой код для получения данных:

Код: Выделить всё

var coins = [Coin]()

func getCoinData() {
let jsonURL = "https://api.coinmarketcap.com/v2/ticker/?convert=AUD"
let url = URL(string: jsonURL)

URLSession.shared.dataTask(with: url!) { [unowned self] (data, response, error) in
guard let data = data else { return }
do {
self.coins = try JSONDecoder().decode([Coin].self, from: data)
DispatchQueue.main.async {
self.tableView.reloadData()
}

} catch {
print("Error is : \n\(error)")
}
}.resume()
}
Мой код для получения данных я использовал тот же, что и раньше, который работал с API версии 1, однако я не думаю, что создал свою структуру правильно.

Подробнее здесь: https://stackoverflow.com/questions/503 ... i-in-swift
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»