Извините заранее, если это глупый вопрос. Я действительно новичок в этом.
Так что я пытаюсь сделать простое приложение, которое показывает текущую bitcoin цену для определенной c валюты, выбранной пользователем.
Сначала я готовлю URL:
let baseURL = "https://api.coindesk.com/v1/bpi/currentprice/"
let currencyArray = ["AUD", "BRL","CAD","CNY","EUR","GBP","HKD","IDR","ILS","INR","JPY","MXN","NOK","NZD","PLN","RON","RUB","SEK","SGD","USD","ZAR"]
var finalURL = ""
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
finalURL = baseURL + currencyArray[row]
coinSelected = currencyArray[row]
getBitcoinData(url: finalURL)
}
Затем я получаю данные JSON.
Alamofire.request(url, method: .get)
.responseJSON { response in
if response.result.isSuccess {
let bitcoinJSON = JSON(response.result.value!)
print bitcoinJSON
Пока все хорошо, я получаю свои данные JSON, и они печатаются правильно.
{
"time": {
"updated": "Apr 17, 2020 08:39:00 UTC",
"updatedISO": "2020-04-17T08:39:00+00:00",
"updateduk": "Apr 17, 2020 at 09:39 BST"
},
"disclaimer": "This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org",
"bpi": {
"USD": {
"code": "USD",
"rate": "7,074.9583",
"description": "United States Dollar",
"rate_float": 7074.9583
},
"GBP": {
"code": "GBP",
"rate": "5,687.3185",
"description": "British Pound Sterling",
"rate_float": 5687.3185
}
}
}
Что я хочу сделать дальше, это получить курс GBP. (Каким-то образом курс доллара всегда отображается перед выбранной валютой)
Я пытался сделать следующее:
func updateBitcoinData(json : JSON) {
let bitcoinRATE = json ["bpi"][1]["rate"]
print(bitcoinVALUE)
}
Но он всегда возвращает ноль ...