如何使用 Alamofire 在 Xcode 8 Swift 3.0 中获取特定的 JSON?
Posted
技术标签:
【中文标题】如何使用 Alamofire 在 Xcode 8 Swift 3.0 中获取特定的 JSON?【英文标题】:How to get specific JSON in Xcode 8 Swift 3.0 using Alamofire? 【发布时间】:2017-01-16 02:55:04 【问题描述】:我有这些 JSON 数据
"ID":"ID01",
"pass":"1234",
"mail":"email@g.com"
我正在尝试仅使用 Alamofire 显示 ID,所有 JSON 对象都可以打印出来。
但是当我尝试专门打印时,出现错误“类型'Any'没有下标成员”行
print(JSON["ID"] as! String)
代码如下
import UIKit
import Alamofire
class ViewController: UIViewController
override func viewDidLoad()
super.viewDidLoad()
Alamofire.request("http://localhost/get.php").responseJSON
response in
if let JSON = response.result.value
print("JSON: \(JSON)")
print(JSON["ID"] as! String)
【问题讨论】:
【参考方案1】:您应该尝试转换响应的值。
怎么样:
if let JSON = response.result.value as? [String : Any]
print("JSON: \(JSON)")
if let id = JSON["ID"] as? String
print(JSON["ID"])
【讨论】:
如果您不使用 SwiftyJSON 的功能,为什么还要使用它?而不是JSON["ID"] as? String
做JSON["ID"].string
。 :)以上是关于如何使用 Alamofire 在 Xcode 8 Swift 3.0 中获取特定的 JSON?的主要内容,如果未能解决你的问题,请参考以下文章
Alamofire 在 Swift 3、Xcode 8 中出现错误
Xcode 8.3.2 不适用于 Alamofire 4.4.0
使用逻辑的顺序请求 - Swift 3、Xcode 8、Alamofire 4
Alamofire 库 request.swift 文件中发生错误 - 更新到 xcode 8.1 后“任务使用不明确”