私はSwift 3.0
とAlamofire 4
を使用しています。私はシングルトンネットワーククラスを使用してサーバにAPI
リクエストを作成しています。インターネットが存在しない場合、Alamofireは閉鎖を完了して障害ハンドラを実行するのに約30秒かかります。ここに私のコードは次のとおりです。Alamofireはネットワークに接続していないときにタイムアウトに時間がかかるのはなぜですか?
func performRequest(_ url:String,completionHandler:@escaping (_ Success:Bool,AnyObject?) -> Void) {
Alamofire.request(url).validate().responseJSON { response in
if response.result.isSuccess { //Request was successful
self.errorCount = 0
completionHandler(true,response.result.value as AnyObject?)
} else {
print("failure occured")
self.setNoInternetDialogAppear()
}
}
}
また、私はこのコードを使用してタイムアウトを設定しようとしたが、それは効果がありません:
`Alamofire.SessionManager.default.session.configuration.timeoutIntervalForRequest = 2000`
私は最近スウィフト2.2とAlamofire 3からの私のコードを移行してのみ開始されましたそれ以来起きている。 TIA
ありがとう。ちょうどこれを試して、まだ長いタイムアウトを経験しています。 – Ollie
タイムアウトはちょうど60秒だと思われます。私は、出力の時間とともに "print"メソッドを配置しました。 – Ollie
奇妙な!私はこの正確な方法を以下のように使用しています: \tポッド 'AlamofireDomain'、 '4.1' 申し訳ありません、もう助けてください。 – karnett