Cómo soluciono el error NSURLErrorDomain-999 en el SO iPhone 3.0
iphone-sdk-3.0 (3)
Las DOS respuestas anteriores fueron CORRECT> Simplemente haga una devolución si la solicitud de carga causa la cancelación.
También quiero señalar que, las personas NO se olvidan de poner un NSLog dentro de su método didFailLoadWithError , esto puede evitar perder mucho tiempo al detectar el problema de inmediato.
Así que aquí está la solución final con todo lo que he mencionado anteriormente:
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
NSLog(@"ERROR : %@",error); //Get informed of the error FIRST
if([error code] == NSURLErrorCancelled)
return;
}
Estoy tratando de actualizar mi aplicación de iPhone para que funcione con OS 3.0. Tengo un UIWebView que muestra una página bien. Pero cuando hago clic en un enlace, llama a mi delegado para didFailLoadWithError y el error es que la operación no se pudo completar. (NSURLErrorDomain error -999.) Comprobé que esto todavía funciona con OS 2.2.1, por lo que es algo cambiado en 3.0.
¿Algunas ideas?
NSURLErrorCancelled (-999)
"Se devuelve cuando se cancela una carga asíncrona. Un delegado de la infraestructura del kit web recibirá este error cuando realice una operación de cancelación en un recurso de carga. Tenga en cuenta que un delegado NSURLConnection o NSURLDownload no recibirá este error si la descarga se cancela".
Para mi situación (y probablemente la tuya) esto puede ser ignorado:
if([error code] == NSURLErrorCancelled) return; // Ignore this error
Pude encontrar la respuesta here .
Este hilo contenía esta descripción para este error: This error may occur if an another request is made before the previous request of WebView is completed...
He solucionado esto ignorando este error y dejando que la vista web continúe cargándose.
if ([error code] != NSURLErrorCancelled) {
//show error alert, etc.
}