Swift -从 JSON 响应创建数据模型

标签: json Swift
发布时间: 2017/3/6 21:37:19
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我正在学习 Swift 郎和之一将是巨大的事情听他人的意见是"你如何处理从 JSON 响应模型"吗?例如-

我有 User.swift 模型︰

class User: NSObject {
  var user_token:String?
  var email:String?
}

和也我想使用KeyValueObjectMapping和我一样在 Obj C 项目。不幸的是这不在这里工作︰

let parser = DCKeyValueObjectMapping.mapperForClass(User)
let user = parser.parseDictionary(data.objectForKey("user") as NSDictionary) as User
println(user.user_token) // returns nil

如何创建中的模型 Swift

解决方法 1:

我推荐使用代码生成来生成模型在 Swift 基于 JSON。为此,我创建了一个工具在http://www.guideluxe.com/JsonToSwift ,使建模和解析 JSON 尽可能容易。

你已经提交到工具类名示例 JSON 对象后,它会生成一个对应 Swift 类,以及任何所需的附属 Swift 类,以表示中隐含的示例 JSON 结构。此外包括用于填充的类方法 Swift 对象,其中包括利用 NSJSONSerialization.JSONObjectWithData 方法。提供了必要的映射从 NSArray 和 NSDictionary 的对象。

后将生成的代码复制到您的项目作为 Swift 类,您只需要提供一个 NSData 对象,包含匹配到工具提供的样品的 JSON。

除了基础,还有没有依赖关系。

这里是如何创建一个 NSData 对象从 JSON 文件可供测试。

let fileUrl: NSURL = NSBundle.mainBundle().URLForResource("JsonFile", withExtension: "json")!
let jsonData: NSData = NSData(contentsOfURL: fileUrl)!
赞助商