我是Swift 3的新手,并且已经尝试了很长时间来做以下事情。 我有这样的JSON响应:
Optional({
"USD_ILS" = {
val = "3.5989";
};
})
以下是我提出请求的地方:
func makeRequest(){
Alamofire.request("http://free.currencyconverterapi.com/api/v3/convert?q=USD_ILS&compact=y").responseJSON { response in
print(response.result.value) // result of response serialization
let data = JSON(response.result.value)
print(data)
let val = data["val"].stringValue
print(val)
}
}
我想要做的就是将'val'字段输入变量,如String(或Double)。我现在正在使用SwiftyJSON,但在此之后仍然不知道该怎么做:
let data = JSON(response.result.value)
答案 0 :(得分:0)
您可以在不使用任何JSON API的情况下进行此类操作:(已测试)
bobby.com
这就是你如何浏览JSON。发生了什么,就是你在字典里面有一本字典,这使它更加复杂"复杂"获得价值。
答案 1 :(得分:0)
您可以使用SwiftyJSON
:
let data = JSON(response.result.value)
guard let value = data["USD_ILS"]["val"].string else {
return
}
print(value)
答案 2 :(得分:0)
试试这个。
func getStringFromJSON(json: Any, key: String, defaultValue: String) -> String {
if let j = json as? [String : AnyObject] {
if let returnString = j[key] as? String {
return returnString
}
}
return defaultValue
}