2011-08-11 11 views
9

लोड करता है मेरे पास एक UIViewController है जो UIWebViewDelegate है और इसके अंदर UIWebView है। मैं किसी विशेष URLdidFailLoadWithError को UIWebView के साथ बुलाया जाता है, भले ही पृष्ठ बाद में

NSURL *url = [NSURL URLWithString:urlAddress]; 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
    [webView loadRequest:requestObj]; 
    [self.view addSubview:webView]; 
    [webView release]; 

लोड करने के लिए कोशिश कर रहा हूँ लेकिन didFailLoadWithError प्रतिनिधि विधि लगभग तुरंत कहा जाता है, और त्रुटि वस्तु है:

Did fail load with error: Error Domain=NSURLErrorDomain Code=-999 "The operation couldn’t be completed. (NSURLErrorDomain error -999.)" UserInfo=0x1a66c0 {NSErrorFailingURLKey=www.somewebsite.com, NSErrorFailingURLStringKey=www.somewebsite.com} 

हालांकि थोड़े समय के बाद, आप वेबसाइट देख सकते हैं कि बस ठीक है।

विफल विधि क्यों कहा जा रहा है? और मुझे कैसे पता चलेगा कि यह वास्तव में असफल रहा है जब विधि को वास्तव में विफल किया गया था या नहीं, इस पर ध्यान दिए बिना विधि को बुलाया गया था?

+0

मैं एक ही त्रुटि मिली क्योंकि पहली बार मैं उपयोग यूआरएल और दूसरी बार मैं URL1 लोड था। शायद यह किसी के लिए मदद करेगा। –

उत्तर

37

आप कर सकते हैं जब पेज तुरन्त जावास्क्रिप्ट के माध्यम से पुनः निर्देशित या है यह त्रुटि प्राप्त किसी भी तरह किसी और

आप यहाँ से जवाब द्वारा त्रुटि दिखाने से बचने कर सकते हैं: How do I fix NSURLErrorDomain error -999 in iPhone 3.0 OS

तरह
if ([error code] != NSURLErrorCancelled) { //show error alert, etc. } 

लेकिन मैं यह नहीं पता कि इसे कहां से बुलाया गया था।

+1

'if ([त्रुटि कोड]! = NSURLErrorCancelled) {// शो त्रुटि चेतावनी, आदि} 'यूआरएल सभी कैप्स होना चाहिए :) –

+0

@YasKuraishi –

+0

@MarekSebera महान काम +1 – iLearner

0

तो StackOverflow question from a while back के अनुसार, आपको जो त्रुटि कोड मिल रहा है वह पिछले अनुरोध से पहले किए गए अनुरोध के कारण हो रहा है।

क्या हो रहा है आप एक ही समय में/बहुत तेज़ी से कई कॉल कर रहे हैं, और कोई सफल रहा है (इसलिए आपका वेब पेज लोड होता है) लेकिन दूसरा असफल रहा है।

-1

उपयोग TapGesture 1. TapGesture निपटने के लिए एक समारोह का उपयोग करने के tapcount का उपयोग कर, तो देखें कि URL, 200 की स्थिति कोड लौटाने, यदि ऐसा है तो वेब दृश्य पर, नीचे समारोह

-(void)animateme{ 
    NSString *urlAddress = Connecting_URL 
    NSURL *url = [NSURL URLWithString:urlAddress]; 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
    [self.webview loadRequest:requestObj]; 
} 

फोन और, का उपयोग करते हुए प्रतिनिधि समारोह,

-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{ 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Device in offline" message:@"Please check your internet connection" delegate:nil cancelButtonTitle:nil otherButtonTitles:nil]; 
     [alert show]; 
} 

आशा है कि यह मदद करता है :)

+0

पर ध्यान देने के लिए धन्यवाद यह जवाब नहीं देता है सवाल – miniBill

संबंधित मुद्दे

 संबंधित मुद्दे