サーバーへのリクエスト送信中に発生したエラーに関する情報をユーザーに提供したいと思います。私はAlamofireを使用しています。
コードは次のようになります。
Alamofire.request(url, method: methodUsed, parameters: parameters).responseData { (response) in
switch response.result {
case .failure(let error) :
// I want to the describe the error in here
case .success(let value) :
let json = JSON(value)
completion(.success(json))
}
}
試しましたが、エラーを切り替えることができません。これに似たものを上記のコードに配置したいと思います。
switch error {
case .NoSignal : // give alert to the user about the signal
case .ServerError : // give alert to the user about server error
}
場合によっては、アラートに対して何らかのアクションを実行するようにユーザーに通知したいのですが、使用可能なケースが何であるか、および使用する必要のある構文がわかりません。
Jayesh Thankiによると、ステータスコードを使用してサーバーエラーを識別でき、インターネット接続にはAlamofireのNetworkReachabilityManagerを使用できます。viewDidLoad()に次のコードを記述します。
var networkManager: NetworkReachabilityManager = NetworkReachabilityManager()!
networkManager.startListening()
networkManager.listener = { (status) -> Void in
if status == NetworkReachabilityManager.NetworkReachabilityStatus.notReachable {
print("No internet available")
}else{
print("Internet available")
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加