如何使用 Swifty 动态创建具有多个键和值的 json 对象
How to dynamically create json object with multiple keys and values using Swifty
我想使用 Swifty 创建一个 json 对象,我可以将其解析为以下格式的字符串:
{
"store": {
"id": "test",
"name": "store1",
"type": "retail"
}
}
我想在单独的 JSON 对象中分阶段完成(最终在单独的函数中),然后将对象连接在一起。当我尝试使用以下代码时,我得到一个数组:
func jsonTest()->String {
var idJson = JSON(["id":"test"])
var nameJson = JSON(["name":"store1"])
var typeJson = JSON(["type":"retail"])
var storeJson = JSON([idJson, nameJson, typeJson])
return storeJson.rawString()!
}
结果:
{
"store": [
{
"id": "test"
},
{
"name": "store1"
},
{
"type": "retail"
}
]
}
您获得数组的原因是因为您在这一行中传递了一个:
var storeJson = JSON([idJson, nameJson, typeJson])
您传递的数组包含 id
、name
和 type
的单独对象,所以这就是您得到的结果。
您应该做的是为商店创建字典,并在将其传递给 JSON
函数之前设置所有值:
var store = [String: String]()
store["id"] = "test"
store["name"] = "store1"
store["type"] = "retail"
var storeJson = JSON(store)
我想使用 Swifty 创建一个 json 对象,我可以将其解析为以下格式的字符串:
{
"store": {
"id": "test",
"name": "store1",
"type": "retail"
}
}
我想在单独的 JSON 对象中分阶段完成(最终在单独的函数中),然后将对象连接在一起。当我尝试使用以下代码时,我得到一个数组:
func jsonTest()->String {
var idJson = JSON(["id":"test"])
var nameJson = JSON(["name":"store1"])
var typeJson = JSON(["type":"retail"])
var storeJson = JSON([idJson, nameJson, typeJson])
return storeJson.rawString()!
}
结果:
{
"store": [
{
"id": "test"
},
{
"name": "store1"
},
{
"type": "retail"
}
]
}
您获得数组的原因是因为您在这一行中传递了一个:
var storeJson = JSON([idJson, nameJson, typeJson])
您传递的数组包含 id
、name
和 type
的单独对象,所以这就是您得到的结果。
您应该做的是为商店创建字典,并在将其传递给 JSON
函数之前设置所有值:
var store = [String: String]()
store["id"] = "test"
store["name"] = "store1"
store["type"] = "retail"
var storeJson = JSON(store)