JSON解码器Swift 4.0

Posted

技术标签:

【中文标题】JSON解码器Swift 4.0【英文标题】:JSON Decoder Swift 4.0 【发布时间】:2018-02-25 16:01:39 【问题描述】:

我收到来自 API 调用的 JSON 响应。

我正在尝试使用 Swift JSON 解码器,但是,我收到以下错误。 [根据附图] 我假设 JSON 解码器仅在您直接从 URL 中提取 JSON 时才有效? - 如我错了请纠正我。有没有办法在这个 API 请求上使用 Swift JSONDecoder() 并得到这个结果?在我的控制台中附加了一些 JSON 的图像。

【问题讨论】:

【参考方案1】:

错误表明 decode 方法需要一个 Data,但您传递给它的是一个包含 [Product]ProductListMeta? 的元组。换句话说,您没有 JSON 响应。 JSON 已为您解码。只需使用productList.products

【讨论】:

使用 productList.products 返回相同的“无法将 '[Product]' 类型的值转换为预期的参数类型 'Data” 使用productList.products 而不是尝试解码任何内容。因为您使用的是 Moltin Swift 库,所以所有的解码都已经为您完成了。你不是在直接谈论 JSON。 我明白了。抱歉,这听起来可能很业余,但我该如何将 productList.products 分配给我的数据模型? 无论您打算如何处理decode(_:from:) 返回的数组,都应该使用productList.products

以上是关于JSON解码器Swift 4.0的主要内容,如果未能解决你的问题,请参考以下文章

在swift iOS中使用JSON解码器解析本地Json

Swift JSON解码器类型不匹配错误

在 Swift 中使用 JSON 解码器难以解析 JSON 中的整数值

带有嵌套数据的 Swift 4 JSON 解码器

用解码器Swift的init解码JSON

我如何使用解码器在swift 4中解析tableview中的json数组