SwiftyJSON:无法获得价值

时间:2015-09-22 13:56:41

标签: json swift swift2 swifty-json

我试图从PHP页面获取JSON响应,然后将其与Swift一起使用。我使用的SwiftyJSON看起来很简单,但是我遇到了一个奇怪的问题。

我的代码是

let json = JSON(data: data!)
let name = json[0]["name"]
print(name)

这打印" null"。但是,如果我尝试打印json [0],我会得到对象结构:

{"name":"Da Mario","description":"pizza","city":"12038 Savigliano","zip":"","address":"Via Macra","phone":"","lat":"44.6451515","lng":"7.6519596","permalink":"n-a"}

对我来说似乎没问题。我真的不明白为什么打印json [0]有效,但json [0] [" name"]没有。

有什么想法吗?我真的无法弄明白。

编辑:这是完整的json数据:

[
  "{\"name\":\"Da Mario\",\"description\":\"pizza\",\"city\":\"12038 Savigliano\",\"zip\":\"\",\"address\":\"Via Macra\",\"phone\":\"\",\"lat\":\"44.6451515\",\"lng\":\"7.6519596\",\"permalink\":\"n-a\"}",
  "{\"name\":\"Burger Kebab\",\"description\":\"kebab\",\"city\":\"Savigliano\",\"zip\":\"12038\",\"address\":\"Via Trento\",\"phone\":\"\",\"lat\":\"44.6496363\",\"lng\":\"7.6525568\",\"permalink\":\"burgerkebab\"}"
]

1 个答案:

答案 0 :(得分:2)

你有一些超过的报价。 你的json应该是这样的:

[
  {\"name\":\"Da Mario\",\"description\":\"pizza\",\"city\":\"12038 Savigliano\",\"zip\":\"\",\"address\":\"Via Macra\",\"phone\":\"\",\"lat\":\"44.6451515\",\"lng\":\"7.6519596\",\"permalink\":\"n-a\"},
  {\"name\":\"Burger Kebab\",\"description\":\"kebab\",\"city\":\"Savigliano\",\"zip\":\"12038\",\"address\":\"Via Trento\",\"phone\":\"\",\"lat\":\"44.6496363\",\"lng\":\"7.6525568\",\"permalink\":\"burgerkebab\"}
]

目前你只有一个字符串数组,你将拥有一个对象数组。