Swift 中的数组到 JSON 数组
Posted
技术标签:
【中文标题】Swift 中的数组到 JSON 数组【英文标题】:Array to JSON Array in Swift 【发布时间】:2017-04-20 17:38:28 【问题描述】:我有两个整数数组,我喜欢将它发送到我的 mongodb 数据库。当我将它作为参数发送到 Alamofire 中的数据库并且在代码中 data_array 1 和 2 指的是 Int 数组时。
let parameters_post: Parameters = [
"sensor_id": "ecg_raw",
"member_id": "58d3f509e48f4ca90dd218e4",
"esignal": "3.5V",
"ts": "emre",
"value1" : data_array1,
"value2" : data_array2
]
Alamofire.request("https://api.mlab.com/api/1/databases/mysignal/collections/Cecgraw?apiKey=2ABdhQTy1GAWiwfvsKfJyeZVfrHeloQI", method: .post, parameters: parameters_post,encoding: JSONEncoding.default, headers: nil).responseData response in
print(response.request)
print(response.response)
print(response.result)
但是,在 mongodb 中是这样看的。我认为这是不正确的;
"_id":
"$oid": "58f9d0e7c2ef162ad3000cb6"
,
"sensor_id": "ecg_raw",
"member_id": "58d3f509e48f4ca90dd218e4",
"value2": [
[
240,
279,
555,
547,
504
]
],
"value1": [
[
135,
91,
101,
115,
106
]
],
"esignal": "3.5V",
"ts": "emre"
【问题讨论】:
【参考方案1】:正如您所说,您希望将密钥 value
的值发送为 [(Int, Int)]
。但实际上你发送的是[[(Int, Int)]]
,这意味着array of array of tuples
(希望你需要发送array of tuples
)。
尝试发送下面的列表,
let parameters_post: Parameters = [
"sensor_id": "ecg_raw",
"member_id": "58d3f509e48f4ca90dd218e4",
"esignal": "3.5V",
"ts": "emre",
"value" : data_array
]
谢谢。
【讨论】:
你好,我改变了结构。你能检查一下新的吗?我有两个整数值,我决定将它们存储在不同的数组中。但仍然无法将其写入数据库。 您遇到什么错误?什么是示例 JSON? 其实我也不是很清楚。正如我搜索的那样,在 JSON 数组中应该像“”手镯。但在我的输出中,只有方形手链。 好的。你能告诉你遇到了什么错误吗? 我现在没有遇到任何问题。我的意思是我可以存储我给出的例子中的值,但我不确定它是否是一个数组,我是否可以获取它。以上是关于Swift 中的数组到 JSON 数组的主要内容,如果未能解决你的问题,请参考以下文章
如何将 alamofire 返回 json 解析为 Swift 中的字符串数组?
将 SwiftyJSON 中的元素添加到 Swift 中的 URL 数组
使用 Alamofire 和 Swift 返回嵌套 JSON 数组中的值