【发布时间】:2019-10-30 04:55:53
【问题描述】:
JSON 解码器显示空列表,但所有内容均已正确编码。我从服务器得到一个 json 数组,在 Xcode 控制台中它仍然显示一个空数组。
News(news: [])
当来自服务器的当前响应是有效的 json 数组时:
{"news":[{"info_id":"unique id","title":"some title","description":"some description","date":"2019-07-10","time":"10:23:00"}]}
我解析 json 的结构是:
struct News: Codable {
let news = [Info]()
struct Info: Codable {
let infoId: String
let title: String
let description: String
let date: String
let time: String
private enum CodingKeys: String, CodingKey {
case infoId = "info_id"
}
}
}
我尝试使用该代码解码该帖子数组:
let decoder = JSONDecoder()
let news: News = try decoder.decode(News.self, from: data)
print("\(news)")
解决方案:let news = [Info]() 更改为 var news = [Info]()
【问题讨论】:
-
好了,排序好了,我把 let news = [Info]() 改成了 var news = [Info]()。