多個 http request,但希望各個 request 能依序、同步Sync 執行 ,而不要 非同步Async 執行
例如我希望第一個 request 取的 server 給的 id 後,
後面其它的 upload request 都要帶入(post/get) 此 id
利用雙層 DispatchGroup
var id:Int = 0 let group1 = DispatchGroup() group1.enter() Alamofire.request("https://www.abc.com/getid").responseJSON { response in print("接收回應資料") *** 取server回應的 id = xxx group1.leave() } group1.notify(queue: DispatchQueue.main) { let group2 = DispatchGroup() Alamofire.request("https://www.abc.com/upload?id=\(id)").responseJSON { response in print("接收回應資料") group2.leave() } group2.notify(queue: DispatchQueue.main) { }//group2 結束 } //group1 結束