gpt4 book ai didi

ios - Alamofire JSON 序列化错误 - Swift 2.0

转载 作者:行者123 更新时间:2023-11-28 08:37:38 25 4
gpt4 key购买 nike

我在通过 Alamofire 发布 JSON 时遇到问题。我收到以下错误。我的参数如前所述 - 知道我做错了什么吗?

    let parameters: [String: AnyObject] = [
"t": [
"name": "foo",
"event": "tap",
"ts": NSDate().timeIntervalSince1970
],
"z": [["key": "12345"], ["key": "67890"]]
]

Alamofire.request(.POST, "https://myapi.com/test", parameters: parameters, encoding: .JSON)

Error Domain=com.alamofire.error Code=-6006 “无法序列化 JSON。输入数据为零或零长度。” UserInfo={NSLocalizedFailureReason=JSON 无法序列化。输入数据为零或零长度。

最佳答案

NSDate 不是有效的 JSON 对象。您需要使用 NSDateFormatter 使用许多 RFC 或 ISO 规范之一将其转换为字符串(最有可能)。下面是一个 ISO8601 日期示例。

let dateFormatter = NSDateFormatter()
dateFormatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"

let iso8601String = dateFormatter.stringFromDate(NSDate())

使用此逻辑,您首先需要将NSDate 参数转换为String,然后将String 版本添加到您的参数字典中Alamofire 将从那里处理它。

关于ios - Alamofire JSON 序列化错误 - Swift 2.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37310679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com