APIからの値が0になるまでループさせたい
実現したいこと
APIからのレスポンスとしてnumberが返ってきますがその値が0になるまで
Alamofireで同じAPIに対してリクエストを投げ続けたいのですが、
どのようにコーディングすれば良いのか思いつきません。
通信結果を投げた順番で結果を受け取るようにしたい場合、
どのように記述することで処理を実装できますか?
while文で囲った場合はレスポンスの速さ次第によっては、
受け取る順番がバラバラ担ってしまうと思うのですが、どうでしょうか。
対象のコード
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
/*ここの処理をループさせたいのです。*/
getMessageList(apiResponse: { response in
※省略
})
/*--------------------------------*/
}
func getMessageList(apiResponse: (responseData: Int) -> ()) {
Alamofire.request(.GET, "(APIのURL)", headers: customHeader)
.responseJSON { response in
guard let object = response.result.value else {
return
}
let json = JSON(object)
let number: Int = json["result"]["number"].int!
apiResponse(responseData: number)
}
}
teratailにも投稿させていただいています。
至急と言うほどでは無いですが、早めに解答をいただけるとありがたいです。
よろしくお願いします。