【发布时间】:2015-11-08 05:19:47
【问题描述】:
我对新版 Alamofire for Swift 2 有疑问
Alamofire.request(.POST, urlString, parameters: parameters as? [String : AnyObject])
.responseJSON { (request, response, result) -> Void in
let dico = result as? NSDictionary
for (index, value) in dico! {
print("index : \(index) value : \(value)")
}
}
在本节中,我想将结果转换为 NSDictionary。但是当我编译并设置断点时,调试器说 dico 是 nil。如果我使用 debugDescription 打印结果,它不是 nil 并且包含我所期望的 如何转换 Result 变量?
【问题讨论】:
-
试试
if let dico = result as? [String: AnyObject] { ... } -
如果没有执行,那是因为结果为 nil(或者不能向下转换为字典)。您应该查看
error中的内容。 -
另外,值得注意的是字典有键,而不是索引。
-
感谢@mattt 的回答。我找到了怎么做。我用你说的,但没有用,当我这样做时: if let dico = result.value as? [String: AnyObject] {} 只需将结果“替换”为“result.value”即可找到
标签: ios json swift swift2 alamofire