#ios #json #swift #api #uikit
#iOS #json #swift #API #uikit
Вопрос:
Я получаю эту ошибку при извлечении данных json из API. Я провел некоторое исследование на сайте, но все равно не смог решить проблему. Как я могу решить эту проблему?
JSON Data
date : 2020.09.29
time : 17:48:25
violence : 3.2
region: AKDENIZ
struct EarthQuake: Codable {
var date: String
var time: String
var violence: Double
var region: String
}
func fetchPostData(completionHandler: @escaping ([EarthQuake]) -> Void) {
let url = URL(string: "https://test.xyz.php")!
let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
guard let data = data else { return }
do {
let postsData = try JSONDecoder().decode([EarthQuake].self, from: data)
completionHandler(postsData)
} catch {
let error = error
print(error.localizedDescription)
}
}.resume()
}
Ответ №1:
Возможно, стоит дважды проверить объект ответа из вызываемого вами api и убедиться, что он соответствует типу [EarthQuake].self . (Который должен быть списком объектов землетрясения). Если данные JSON, которые вы добавили в исходное сообщение, являются правильными данными, возвращенными из конечной точки, то это не список, и если это объект землетрясения, вам просто нужно будет убрать скобки. так
[Землетрясение].self. должно быть EarthQuake.self
Комментарии:
1. Я исправил проблему с json4swift.com . Спасибо за ответ
![]()