需求描述:git
GET請求一個url,返回的是須要解析的json串。github
步驟以下:json
首先是使用Alamofire初始化一個url,這裏須要注意的是不要自定義參數,好比使用%@來替換參數。應該使用Alamofire自帶的參數設置:數組
let parameters: Parameters = ["sort": "string"] Alamofire.request(url,parameters:parameters).responseJSON{response in //your code here }
接着就是解析json串,使用SwiftyJson比較方便一點,避免了各類類型之間的強制轉換,這個框架代替咱們完成了框架
switch response.result { case .success( _): if let data = response.data { do{ let json = try JSON(data: data) //result指的是json的第一個key值,以及後面的取值方式是以一個數組拿出來,這裏須要本身按照實際狀況 let subString_sick = json["result"].array![0][0].string!.split(separator: ";") //處理另一個 let subString_advice = json["result"].array![0][1].string!.split(separator: ";") //整合,保存在全局變量中方便在其餘地方使用 let arraySickAndAdvice = [subString_sick,subString_advice] self.dictionarySickLabel[sickTag] = arraySickAndAdvice }catch{} } case .failure(let error): print("\(error)") }
關於字典的Swift的初始化定義參考:ide
var arraySickLabels: Array<UILabel> = [] var dictionarySickLabel : Dictionary<String, Array<Any>> = [:]
在其餘地方調用的時候須要類型轉一下ui
as! [String.SubSequence] //由於咱們使用splite獲得的變量就是該類型
參考網頁:url
https://github.com/SwiftyJSON/SwiftyJSONcode
https://github.com/Alamofire/Alamofire/blob/master/Documentation/Alamofire%204.0%20Migration%20Guide.mdblog
https://www.jianshu.com/p/f8c3adb056cf
https://www.jianshu.com/p/ff8c099d23b1
https://www.jianshu.com/p/acf91a4113ff
https://cloud.tencent.com/developer/ask/131211