0
我一直在將UBER搭車API集成到我的應用程序中。我是swift的初學者,但我仍然沒有完全理解從URI解析JSON/Dictionary等的概念。當我預訂尤伯杯我得到這樣如何解析來自URI的2個響應中的字典
{"status":"processing","product_id":"28d5215d","destination":{"latitude":10.0216,"longitude":76.27394},"driver":null,"pickup":{"latitude":10.01319,"longitude":76.27691},"request_id":"5aa6fe30-9eed-4f19-8a8f-c0ed8aa1bfae","location":null,"vehicle":null,"shared":false}
響應然後,當駕駛員接受我的請求,我從同dataRequestWithURL這樣的反應。我通過在響應中調用相同的dataTask來做到這一點,直到驅動程序接受它爲止。
{"status":"accepted","product_id":"6fd04ea","destination":{"latitude":10.0216,"eta":8,"longitude":76.27394},"driver":{"phone_number":"+919562117444","rating":4.62,"picture_url":"https:\/\/d1w2poirtb3as9.cloudfront.net\/token.jpeg","name":"FULL NAME","sms_number":null},"pickup":{"latitude":10.01319,"eta":5,"longitude":76.27691},"request_id":"5aa6fe30-9eed-4f19-8a8f-c0ed8aa1bfae","location":{"latitude":10.0062228,"bearing":249,"longitude":76.2780944},"vehicle":{"make":"Maruti Suzuki","picture_url":null,"model":"Ritz","license_plate":"LICENSE#"},"shared":false}
如何根據條件解析此問題。
這是我現在的代碼。
if let dict = (try? NSJSONSerialization.JSONObjectWithData(data!, options: [])) as? [String: AnyObject],
let status = dict["status"] as? String,
let driver = fareDict["driver"] as? [String:AnyObject] {
do
{
//assign the value and update UI
} catch let error {
print("OK")
}
}