Я использую Swift 5 и Xcode 11. Я пытаюсь проанализировать JSON, возвращающийся с этого сайта, API, который я разрабатываю. http://aarontcraig-001-site1.htempurl.com/api/values
Значение JSON, возвращаемое этим вызовом API:
[
{
"Businesses": [],
"Customer": null,
"ID": 1,
"Name": "Coffee Shop",
"CustomerID": null
},
...
]
Продолжается массив. Некоторые записи являются нулевыми, другие нет. Однако, когда я его анализирую, все они возвращаются, ноль.
Вот мой код:
let url = "http://aarontcraig-001-site1.htempurl.com/api/values"
guard let finalURL = URL(string: url) else {
return
}
URLSession.shared.dataTask(with: finalURL) { (data, response, error) in
guard let data = data else {return}
do {
let myData = try JSONDecoder().decode([Value].self, from: data)
print(myData)
}
catch {
print("Error parsing \(error)")
}
и структура, которую я использую, чтобы перехватить все это:
struct Value: Codable {
let businesses : [String]?
let customer : String?
let iD : Int?
let name : String?
let customerID : String?
}
Все, что я получаю, - это нулевые значения, хотя многие из них явно нет. Это то, что возвращается.
[Sunrise.Value (предприятия: ноль, клиент: ноль, iD: ноль, имя: ноль, идентификатор клиента: ноль), Sunrise.Value (бизнес: ноль, клиент: ноль, iD: ноль, имя: ноль, идентификатор клиента: ноль), Sunrise.Value (предприятия: ноль, клиент: ноль, iD: ноль, имя: ноль, идентификатор клиента: ноль), Sunrise.Value (бизнес: ноль, клиент: ноль, iD: ноль, имя: ноль, идентификатор клиента: ноль), Sunrise.Value (предприятия: ноль, клиент: ноль, iD: ноль, имя: ноль, идентификатор клиента: ноль), Sunrise.Value (бизнес: ноль, клиент: ноль, iD: ноль, имя: ноль, идентификатор клиента: ноль)]
Что я делаю не так? Даже если я попытаюсь просто захватить имя, которое имеет значение для каждой записи, оно устанавливает его в ноль. Я получаю данные, потому что, если я ставлю точку останова на данные, я вижу их там.