decodable相关内容

debugDescription:“预期解码数组<任何>"但找到了一本字典.",underlyingError: nil)

我想将一个在线 json 文件加载到我的应用程序中,但我遇到了这个错误: typeMismatch(Swift.Array,Swift.DecodingError.Context(codingPath: [], debugDescription:"本应解码数组,但找到了字典.",底层错误:nil)) 我查看了 stackoverflow,但其他解决方案并没有帮助解决我的问题. 我 ..
发布时间:2021-12-23 17:21:59 移动开发

如何解码不同类型的 JSON 属性?

我有一个 JSON {“电视节目": {“身份证":5348,"name": "超自然","permalink": "超自然","url": "http://www.episodate.com/tv-show/supernatural",“描述":“超自然是由埃里克·克里普克创作的美国奇幻恐怖电视连续剧.它于 2005 年 9 月 13 日在 WB 上首播,随后成为 CW 的继任者阵容的一部分. ..
发布时间:2021-11-26 22:58:49 移动开发

使用可解码的 JSON 解析

我正在尝试使用可解码协议解析以下 JSON.我能够解析字符串值,例如 roomName.但我无法正确映射/解析所有者、管理员、成员键.例如,使用下面的代码,我可以解析所有者/成员中的值是否作为数组出现.但在某些情况下,响应将作为字符串值出现(请参阅 JSON 中的 owners 键),但我无法映射字符串值. 注意:admins、members、owners 的值可以是字符串或数组(参见 JS ..
发布时间:2021-09-02 18:51:55 移动开发

当属性类型可能从 Int 更改为 String 时,如何使用 Decodable 协议解析 JSON?

我必须解码具有大结构和大量嵌套数组的 JSON.我已经在我的 UserModel 文件中复制了该结构,并且它可以工作,但嵌套数组(位置)中的一个属性(邮政编码)有时是 Int,而其他一些是 String.我不知道如何处理这种情况并尝试了很多不同的解决方案.我试过的最后一个来自这个博客 https://agostini.tech/2017/11/12/swift-4-codable-in-real- ..
发布时间:2021-09-01 20:37:42 移动开发

如何在 Swift 4 中引用通用的可解码结构

我有一个函数,我想重用它并让它接受一个 Decocable 结构的参数.例如,这是我当前代码的简化(假设“MyDecodableStruct"是在应用程序其他地方声明的可解码结构): static func getResults(url: String, parameters: Parameters) {//成功 REST 响应如果 response.result.isSuccess {结构结 ..
发布时间:2021-08-31 19:09:45 其他开发

无法将符合协议的元素映射到通用元素

如下所示,我下载了包含异类对象的结构数组,这些结构被解码为包含嵌套对象的枚举. 我现在想将所述对象放入通用的Model结构中,但是编译器不允许这样做-错误在下面的代码注释中进行了描述.我对使用Swift进行编程相对较新,希望您的帮助. import Foundation让jsonString =“"“{“数据":[{"type":"league",“信息":{“名称":"NBA","sp ..
发布时间:2021-05-10 18:58:00 移动开发

如果首次解码失败,则使用Combine和Swift解码另一个响应

我有以下模型: struct响应:可解码{让消息:字符串}struct ErrorResponse:可解码{让errorMessage:字符串}枚举APIError:错误{案例网络(代码:整数,描述:字符串)大小写解码(描述:字符串)大小写api(描述:字符串)} 我正在尝试使用以下流程获取网址并解析JSON响应: func fetch(URL:URL)->AnyPublisher ..
发布时间:2021-04-23 19:15:37 移动开发

如何在Swift中使用许多唯一键对嵌套JSON进行解码?

我的问题是,我可以用来解码具有许多不同密钥的JSON的最佳方法是什么?现在,我正在为每个单个对象创建一个变量.这似乎效率低下/很难编码,我大约有8种不同的菜单可以解码. 这是我的JSON :(很长,我知道) {“早午餐": {"BEAR FIT":[“咸豆腐,菠菜,番茄争夺战"],“熊融合":[“烤红金甜菜",“烤火腿",“土豆泥",“烤Zuchhini壁球混合泳",“素食庆典烤",“蒸 ..
发布时间:2021-04-22 20:38:48 移动开发

可编码:不符合协议“可解码"

无法弄清楚为什么我的课程不符合Codable请注意,就我而言,我不需要实现 encoding 和 decode 的方法. 公共类LCLAdvantagePlusJackpotCache:可编码{public let令牌:字符串公开租借数量:NSNumber公众租赁成员:布尔public init(令牌:字符串,数量:NSNumber,成员:Bool){self.token =令牌self.amo ..
发布时间:2021-04-22 20:38:39 移动开发

可以解码Swift中可以和数组或单个元素的JSON数据吗?

我有一个名为Info的结构,该结构根据接收到的数据进行解码.但有时,数据中的值之一可以是double或double数组.我该如何设置我的结构? 结构信息:可降解{让作者:字符串让标题:字符串let标签:[标签]售价:[双倍]枚举标签:字符串,可分解{非案例小说案例传记案例小说}} 根据网址,我要么获得双倍价格 {“作者":“标记A",“标题":"The Great Deman",“标签" ..
发布时间:2021-04-22 20:37:59 移动开发

子类化快速通用可解码类型

编辑: Rob Napier撰写,该问题存在于Xcode 9.2中.在Xcode 9.3中,该问题不再相关. 我的服务器json响应都打包在data对象中: { "data": {...} } 因此,我具有以下通用类型来解析JSON: class DataContainer: Decodable { let data: T ..
发布时间:2021-02-13 21:23:12 移动开发

如何从Swift 4的Decoder容器中获取未解码的属性?

我正在使用Decodable协议来解析从外部来源收到的JSON.解码了我确实知道的属性后,JSON中仍然可能存在一些未知且尚未解码的属性.例如,如果外部源在将来的某个时间点向JSON添加了新属性,我想通过将它们存储在[String: Any]词典(或替代方法)中来保留这些未知属性,以使这些值不会被忽略 问题是,在解码了我确实知道的属性后,容器上没有任何访问器可以检索尚未解码的属性.我知道de ..
发布时间:2021-02-13 20:42:48 移动开发

带有随机键属性的Swift 4可解码嵌套json

我在解码json时遇到问题.我遵循了很多教程,但是没有使用复杂的json结构.为简单起见,我最小化了代码,并以Dog为例. 在以下json中,我主要只对Dog结构感兴趣. json“数据"属性包含随机的狗名.所以我不能使用编码键,因为我不知道属性名称. { "Response": "success" "BaseLinkUrl": "https://wwww.exam ..
发布时间:2021-02-13 20:42:21 其他开发