Witam. Jestem osobą początkującą jeżeli chodzi o język Swift. Mam pytanie co do pobierania danych z serwera API. Mianowicie chodzi o to, że nie wiem jak z tego api: https://api.exchangeratesapi.io/latest?base=PLN pobrać konkretną wartość waluty i jej nazwe. Dodatkowo chce to zapisać do słownika i w nim przechowywać nazwę kursu oraz wartość
0
0
https://developer.apple.com/videos/play/wwdc2017-212/?time=1496
extension DateFormatter {
static let yyyyMMdd: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
formatter.calendar = Calendar(identifier: .iso8601)
formatter.timeZone = TimeZone(secondsFromGMT: 0) // ?
formatter.locale = Locale(identifier: "en_US_POSIX") // ?
return formatter
}()
}
struct ExchangeRates: Decodable {
public let rates: [String:NSDecimalNumber]
public let base: String
public let date: Date
}
let decoder = JSONDecoder()
decoder.dateDecodingStrategy = .format(DateFormatter.yyyyMMdd)
let rates = try decoder.decode(ExchangeRates.self, from: jsonData)
Przy czym użyłem NSDecimalNumber
a nie double
bo w operacjach finansowcze utrata precyzji przy konwersji, może mieć brzydkie konsekwencje.