2010-12-17 9 views
86

मेरे आवेदन में, मेरे पास UIWebview है जो लॉगिन के लिए लिंकिन लेख पृष्ठ लोड करता है। जब उपयोगकर्ता लॉग इन करता है, कुकीज़ एप्लिकेशन में सहेजती है।UIWebView की सभी कुकीज़ को कैसे हटाएं?

मेरे ऐप में एक लॉगआउट बटन है जो लिंकइन लॉगिन से संबंधित नहीं है। तो जब उपयोगकर्ता इस बटन पर क्लिक करता है, तो वह ऐप से लॉग ऑफ हो जाता है। मैं चाहता हूं कि यह लॉग ऑफ ऐप से भी अपनी लिंक्डइन कुकीज़ साफ़ कर देगा, ताकि उपयोगकर्ता पूरी तरह लॉग आउट हो जाए।

उत्तर

201

this question के अनुसार, आप "कुकी जार" में प्रत्येक कुकी के माध्यम से जा सकते हैं और उन्हें हटा दें, तो जैसे:

NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; 
for (NSHTTPCookie *cookie in [storage cookies]) { 
    [storage deleteCookie:cookie]; 
} 
[[NSUserDefaults standardUserDefaults] synchronize]; 
+2

हाँ यह काम कर रहा है, बहुत धन्यवाद –

+0

आईओएस> = 4.0 – Ishu

+0

@ फ़ेलिप को एक अस्थायी तरीका मिला, यदि आप लॉगआउट करते हैं तो ऐप लोड में कुकीज़ को हटाने की आवश्यकता है पिछली बार। – Ishu

1

आप WebView के HTML, कि कुकीज़ साफ अंदर एक समारोह कर सकता है ।

यदि आपको केवल एक बार टाइटेनियम ईवेंट के साथ इस फ़ंक्शन को ट्रिगर करने के लिए सफाई की आवश्यकता होती है, तो केवल ऐप शुरू होने पर ही।

7

बस इसके बारे में कुछ जानकारी जोड़ना चाहता था।

ओएस एक्स 10.9/iOS 7 और बाद में, आप अपने sharedSession से पूरे एप्लिकेशन का कैश आदि कुकी साफ़ करें और करने के लिए -resetWithCompletionHandler: उपयोग कर सकते हैं:

सभी कुकीज़, कैश खाली और क्रेडेंशियल स्टोर्स, डिस्क फ़ाइलों को हटा देता है, डिस्क पर प्रगति डाउनलोड फ्लश करता है, और यह सुनिश्चित करता है कि भविष्य अनुरोध एक नई सॉकेट पर होते हैं।

[[NSURLSession sharedSession] resetWithCompletionHandler:^{ 
    // Do something once it's done. 
}]; 

के लिए-इन पाश जबकि मेरे लिए एक संग्रह गणनाdeleteCookie: साथ बदलाव की तरह लगता है। (पता नहीं, एक बुरा विचार हो सकता है?)

+0

मैंने सफलतापूर्वक चलाने के लिए दोनों विधियों का उपयोग किया है, लेकिन मुझे अभी भी यह पता चल रहा है कि Google अभी भी इन सभी के बाद एक खोज इतिहास दिखा रहा है (साइन इन नहीं है)। कोई विचार? धन्यवाद – mylogon

+0

क्या यह अलामोफायर की किसी भी स्थिति और मेरे बैकएंड आरईएसटी एपीआई की खपत को प्रभावित करेगा? क्या Alamofire URLSession पर इसका समाधान आधार नहीं है? – Sajjon