在Swift中为JSON动态组装复杂的多维字典

时间:2015-10-13 18:54:07

标签: json swift dictionary swift-dictionary

我正在尝试动态组装一些复杂的JSON:

{
  "data": {
  "attributes": {
    "duration_sec": 200
  },
  "relationships": {
    "address": {
      "data": {
        "id": 1,
        "type": "addresses"
      }
    }
  }
},
  "included": [
    {
      "type": "addresses",
      "id": null,
      "attributes": {
        "zip_code": "90210"
      }
    }
  ]
}

也就是说,我有一个Address结构数组,我需要循环组装relationshipsincluded。我希望如果这是一本字典,但我也可以使用SwiftyJSON代替组装JSON对象。

当我自己尝试这样做时,我一直存在编译器含糊不清的问题,所以老实说我不知道​​如何解决这个问题。我来自动态编程语言,所以感觉一般都对此感到茫然。

1 个答案:

答案 0 :(得分:0)

很难回答那个没有确切编译错误的错误,但通常关于歧义的错误来自于你正在尝试创建异构字典并且编译器无法推断它的类型这一事实。

如果你想创建一个像上面那样的json对象并使用JSON(dictionary :)初始化程序,你应该手动声明一种字典为 [String:AnyObject]

示例:

let exampleDict: [String: AnyObject] = ["one" : 1, "two": "two", "three": [1, 2, 3]]