微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用swift 4为数组从远程URL检索json数据的正确方法

我试图看看在 swift 4中使用Codable结构检索json数据的最新和最好的方法是什么.

我在远程URL中有以下json数据:

[
  {
    "products": [
        {
          "productid": "01","price": "01"
        },{
          "productid": "02","price": "02"
        }
    ]
  }
]

我还设置了相应的可编码结构.我的问题是使用swift 4的最新技术检索这些数据的正确方法.

我看到了各种各样的方式,例如:

> DataManager.getJSONFromURL …
>让jsonData =尝试数据(contentsOf:URL …
> let task = URLSession.shared.dataTask(with:url)…
>尝试JSONSerialization.data …

我想知道哪个是从远程URL使用swift 4检索json数据的正确(最新)格式.谢谢.

解决方法

我找到了问题的答案.

Apple在2017年WWDC上宣布Swift 4作为Xcode 9的一部分.它为现有的Swift 3功能和稳定性带来了一些非常好的改进.在Swift 4中使用REST API的最新方法是使用URLSession和JSONDecoder.后者是随Swift 4引入的.

在Swift 3中,大多数开发人员使用第三方框架(如SwiftyJson和Alamofire)来使用REST API.大多数情况下,这样做的原因是使用Swift解析JSON非常繁琐.更准确地说 – 您必须在模型中设置初始化程序,必须执行循环以在控制器中分配值,必须对类型值进行类型转换等.您可以随时复制/粘贴代码,但仍然是压倒性的.使用Swift 4,您需要做的只是编写一行来解码和解析JSON.

在Swift 4中,您只需要URLSession和JSONDecoder来从远程URL检索json数据.

有关更多信息和示例,您可以查看此站点

URLSession and JSONDecoder in Swift 4

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐