2013-05-06 26 views
5

में NSURLConnection ऑब्जेक्ट्स के बीच अंतर करें मेरे पास दो अनुरोध एक दूसरे के बाद शुरू हो रहे हैं। इसप्रतिनिधि

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.google.com"]]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60]; 
NSURLConnection * connection = [[NSURLConnection alloc] 
           initWithRequest:request 
           delegate:self startImmediately:NO]; 
[connection scheduleInRunLoop:[NSRunLoop mainRunLoop] 
         forMode:NSDefaultRunLoopMode]; 
[connection start]; 

की तरह शुरू अनुरोध और एक अन्य अनुरोध इस तरह शुरू।

NSURL *url1 = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.apple.com"]]; 
NSURLRequest *request1 = [NSURLRequest requestWithURL:url1 cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60]; 
NSURLConnection *connection1 = [[NSURLConnection alloc] initWithRequest:request1 delegate:self]; 
[connection1 release]; 

मैं प्रतिनिधि दोनों में इन दोनों के बीच अंतर कैसे कर सकता हूं?

-(void)connectionDidFinishLoading:(NSURLConnection *)connection{} 

इस उद्देश्य के लिए कोई अतिरिक्त कक्षा चर रखना नहीं चाहते हैं।

+0

जांचें कि कॉलबैक विधि में 'कनेक्शन' स्मारक आपके कोड में 'कनेक्शन' या' कनेक्शन 1' चर के बराबर है या नहीं। – Markus

उत्तर

4

यह सरल है:

-(void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
    if (connection == connection1) 
    { 
     //It's for connection1. 
    } 
    else if (connection == connection2) 
    { 
     //It's for connection2. 
    } 
} 

आप इस सुंदर तो सवाल के माध्यम से जाना कर सकते हैं: Managing multiple asynchronous NSURLConnection connections

+0

उस स्थिति में मुझे दो वर्ग चर कनेक्शन 1 और कनेक्शन 2 रखना होगा, क्योंकि दोनों कनेक्शन एक साथ काम कर रहे हैं। और मैं इन अतिरिक्त चर से बचने की कोशिश कर रहा हूं। – NaXir

+0

उस स्थिति में, क्या मैं आपसे पूछ सकता हूं कि आप इस पुराने दृष्टिकोण का उपयोग क्यों कर रहे हैं? – Bhavin

+0

मुझे यह करना आसान लगता है। क्या आप नया दृष्टिकोण साझा करेंगे? – NaXir

2

ज फ़ाइल में अपने NSURLConnection वस्तुओं लेने के लिए और के रूप में मार्कस ने सुझाव दिया है आपका प्रतिनिधि विधि में जाँच करें।

या

उपवर्ग अपने NSURLConnection और फिर आप जबकि बनाने कनेक्शन वर्ग के लिए tag संपत्ति जोड़ सकते हैं, तो आप को सौंपने में तरीकों उपयुक्त टैग के लिए जाँच करें। आप working tutorial here पा सकते हैं।

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