używam NSURLConnection's
sendSynchronousRequest:returningResponse:error:
sposób (w osobnym NSOperation
wątku), aby połączyć się z serwerem zewnętrznym do retreive danych. Skąd mam wiedzieć, czy operacja zakończyła się w czasie lub inny błąd sieci?Jak wykryć, czy NSURLConnection za sendSynchronousRequest: returningResponse: error: zakończył się limit czasu lub inny błąd
5
A
Odpowiedz
14
Jeśli wystąpił błąd, parametr błędu będzie zerowy, gdy powróci sendSynchronousRequest:returningResponse:error:
.
Możesz pobrać kod błędu, sprawdzając wartość zwróconą przez [NSError code]
. Kod błędu dla limitu czasu to NSURLErrorTimedOut
.
na przykład:
NSError *error = nil;
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]
if (error.code == NSURLErrorTimedOut) {
// Handle time out here
}
0
Użytkownik może wyświetlić ostrzeżenie dla użytkownika i przekazać komunikat o błędzie z parametru sendSynchronousRequest:returningResponse:error:
do komunikatu alertu.
kod będzie coś takiego:
[NSURLConnection sendSynchronousRequest: req returningResponse: &response error: &error];
if (error)
{
UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"Error" message:[error localizedDescription] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[alert show];
}
Nadzieja pomaga !!
Powiązane problemy
- 1. Swift NSURLConnection sendSynchronousRequest
- 2. Obsługa błędów za pomocą NSURLConnection sendSynchronousRequest
- 3. NSURLConnection zakończył się błędem - kod -1002
- 4. Limit czasu połączenia NSURLConnection w systemie iOS8
- 5. NSURLConnection sendSynchronousRequest - tło do pierwszego planu
- 6. NSURLConnection sendSynchronousRequest/sendAsynchronousRequest nie powiedzie się po aplikacji zabity przez iOS
- 7. Jak wykryć dźwięk zakończył się na stronie internetowej?
- 8. Odbieranie nagłówków HTTP za pośrednictwem NSURLRequest/NSURLConnection w kakao
- 9. iOS 11, Xcode 9 Błąd: NSURLConnection zakończył się błędem - kod -1100
- 10. msxml6.dll error „80072ee2” Przekroczono limit czasu operacji
- 11. iOS9 sendSynchronousRequest przestarzałe
- 12. Jak wykryć limit czasu sesji w Asp.net Core?
- 13. Trigger build, gdy inny zakończył się pomyślnie w TFS 2008
- 14. IOS 9 NSURLConnection przestarzałe
- 15. Jak sprawdzić Response.statusCode w sendSynchronousRequest na Swift
- 16. "Błąd: plik wiadomości za duży" Czy limit na wychodzące lub przychodzące kończy się?
- 17. Żądanie HTTPS w systemie iOS 9: NSURLSession/NSURLConnection Wczytanie HTTP nie powiodło się (kCFStreamErrorDomainSSL, -9802)
- 18. Jak wykryjesz, kiedy plik dźwiękowy się zakończył?
- 19. Semafor Przekroczono limit czasu
- 20. uWSGI - inny limit czasu Harakiri dla administratora Django
- 21. Limit czasu wykreślania UDP
- 22. Poczta HTTP - przekroczenie czasu - uruchamianie wielu żądań w ramach limitu czasu
- 23. "błąd: NULL" lub "error: zero"?
- 24. Tempomat i Git: "Przekroczono limit czasu operacji kontroli źródła." error
- 25. Usługa nie uruchamia się: błąd 1067: proces zakończył się nieoczekiwanie
- 26. opóźnienie() lub limit czasu z zatrzymaniem()?
- 27. Limit czasu pracownika Gunicorn
- 28. błąd Upłynął limit czasu Devise pokazano `true`
- 29. Limit czasu pracy jednorożców
- 30. py2neo 2.0: BŁĄD: httpstream :! Błąd łączy: limit czasu