将 json 响应映射到自定义对象
Mapping json response to custom object
我收到来自服务器的以下响应。
[
{
"resourceEmail" : "",
"kind" : "admin#directory#resources#calendars#CalendarResource",
"resourceId" : "",
"resourceName" : "Inubation-Newton-4p",
"resourceType" : "Confroom",
"etags" : "\"eqO3c9wtJJ4wVWz2xe0E9HiU_D0\/rfmk2kZmhGi4HcHadds\""
},
{
"resourceEmail" : "...",
"kind" : "admin#directory#resources#calendars#CalendarResource",
"resourceId" : "...",
"resourceName" : "MVD11-R2-Napolitana",
"resourceType" : "1 Tel Room",
"etags" : "\"eqO3c9wtJJ4wVWz2xe0E9HiU_D0\/zcPwONBLID-O_3gvi0ly\""
},
]
如何将上述 json 数组转换为自定义对象数组。我正在使用 SwiftyJSON 创建自定义对象。下面是我的自定义对象 class.
class CalendarResource: NSObject {
var resourceID: String
var resourceEmail: String
var resourceName: String
var etags: String
init(json: JSON) {
self.resourceID = json[Constants.Model.CalendarResource.resourceID].stringValue
self.resourceEmail = json[Constants.Model.CalendarResource.resourceEmail].stringValue
self.resourceName = json[Constants.Model.CalendarResource.resourceName].stringValue
self.etags = json[Constants.Model.CalendarResource.etags].stringValue
}
}
谢谢
struct CalendarResource {
var resourceID: String
var resourceEmail: String
var resourceName: String
var etags: String
init(json: JSON) {
self.resourceID = json["resourceID"].stringValue
self.resourceEmail = json["resourceEmail"].stringValue
self.resourceName = json["resourceName"].stringValue
self.etags = json["etags"].stringValue
}
}
当您收到这样的回复时:
//create array somewhere outside of the method, var calendarResourceArray: [CalendarResource]
let jsonArray = response
self.calendarResourceArray = jsonArray!.map{CalendarResource(json: [=11=])}
我收到来自服务器的以下响应。
[
{
"resourceEmail" : "",
"kind" : "admin#directory#resources#calendars#CalendarResource",
"resourceId" : "",
"resourceName" : "Inubation-Newton-4p",
"resourceType" : "Confroom",
"etags" : "\"eqO3c9wtJJ4wVWz2xe0E9HiU_D0\/rfmk2kZmhGi4HcHadds\""
},
{
"resourceEmail" : "...",
"kind" : "admin#directory#resources#calendars#CalendarResource",
"resourceId" : "...",
"resourceName" : "MVD11-R2-Napolitana",
"resourceType" : "1 Tel Room",
"etags" : "\"eqO3c9wtJJ4wVWz2xe0E9HiU_D0\/zcPwONBLID-O_3gvi0ly\""
},
]
如何将上述 json 数组转换为自定义对象数组。我正在使用 SwiftyJSON 创建自定义对象。下面是我的自定义对象 class.
class CalendarResource: NSObject {
var resourceID: String
var resourceEmail: String
var resourceName: String
var etags: String
init(json: JSON) {
self.resourceID = json[Constants.Model.CalendarResource.resourceID].stringValue
self.resourceEmail = json[Constants.Model.CalendarResource.resourceEmail].stringValue
self.resourceName = json[Constants.Model.CalendarResource.resourceName].stringValue
self.etags = json[Constants.Model.CalendarResource.etags].stringValue
}
}
谢谢
struct CalendarResource {
var resourceID: String
var resourceEmail: String
var resourceName: String
var etags: String
init(json: JSON) {
self.resourceID = json["resourceID"].stringValue
self.resourceEmail = json["resourceEmail"].stringValue
self.resourceName = json["resourceName"].stringValue
self.etags = json["etags"].stringValue
}
}
当您收到这样的回复时:
//create array somewhere outside of the method, var calendarResourceArray: [CalendarResource]
let jsonArray = response
self.calendarResourceArray = jsonArray!.map{CalendarResource(json: [=11=])}