【发布时间】:2014-12-19 21:51:41
【问题描述】:
我在 Swift 中有两个数组,一个 Customer 数组和一个 Order 数组。
var orders = _orderService.GetOrders(...) //just simplifying
var customers = _customerService.GetCustomers(...) //simplifying obviously
现在我将它们作为 Array 和 Array,我想将它们转换为 JSON,并以 POST 的形式将它们发送到我的 Web 服务。
我的客户和订单类都有一个 .toDictionary() 实现,允许他们将自己表示为 Dictionary,这对于 json 来说是完美的!
我在想,为了一次正确地将它们表示为 JSON,我可以这样做:
var customerJSON = customers.map({"\(NSJSONSerialization.dataWithJSONObject($0.toDictionary(), options: nil, error: &err))"})
所以这可以工作并产生一个字符串数组,数组中的每一行都是一个序列化的客户。我可以对我的订单采用同样的方法,并且可以将它们组合成一个巨大的字符串数组,每个字符串都表示为 JSON。
我现在坚持的是如何处理这个数组以正确发布它。
request.HTTPMethod = "POST"
request.HTTPBody = <<WHAT GOES HERE TO SEND VALID JSON OVER??>>
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("application/json", forHTTPHeaderField: "Accept")
非常感谢大家!
【问题讨论】:
-
您应该创建一个包含所有 NSDictionary 的 NSArray 并对其进行序列化。
标签: ios json swift ios8 xcode6