深入理解Codable路由:从基础到实践
1. Codable解码策略问题及解决方法
在使用Codable时,解码策略会首先被应用。例如,按照指定的解码策略, song_title 会在这一步转换为 songTitle 。之后,Codable会检查是否设置了自定义编码键行为,在此情况下,它会查找键为 song_title 的 title 属性。
这里存在一个问题:解码器已经将值转换为驼峰命名的 songTitle ,这意味着自定义编码键无法找到它要查找的 song_title 键,从而抛出错误。
解决此问题的方法是更新 CodingKeys 字符串,使其遵循驼峰命名而非蛇形命名:
case title = "songTitle"
case length = "songLength"
这样,当对象从JSON解码时,解码器的 keyDecodingStrategy 会先将蛇形命名的属性名转换为驼峰命名(如 song_title 变为 songTitle ),然后使用输入的驼峰命名的 CodingKeys 将这些值转换为本机属性名(如 songTitle 变为 title )。当对象编
超级会员免费看
订阅专栏 解锁全文
42

被折叠的 条评论
为什么被折叠?



