¿Cómo eliminar los datos cookie y userdefaults usando shanetworkingHTTPCookieStorage?

Tengo un logging y el método APIManager.m en APIManager.m . En el método loginWithUserName , configuré las cookies como tal:

 if ([[responseObject objectForKey:@"status_code"] isEqualToString:kStatusOk]) { NSArray *cookies = [[NSHTTPCookieStorage shanetworkingHTTPCookieStorage] cookies]; self.cookie = cookies[0]; NSLog(@"%@", self.cookie); NSData *cookiesData = [NSKeyedArchiver archivedDataWithRootObject:self.cookie]; NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:cookiesData forKey:@"savedCookie"]; [defaults synchronize]; NSLog(@"%@ \n\n\n RESPONSE OBJECT Obtained \n\n\n",responseObject); succes(responseObject); } else { failure(responseObject); } 

y tengo un método para cargar cookies guardadas (utilizo este método en mi appDelegate después del inicio de session o el logging):

 (BOOL) loadSavedAuthCookie { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSData *cookieData = [defaults dataForKey:@"savedCookie"]; if (cookieData) { id cookie = [NSKeyedUnarchiver unarchiveObjectWithData:cookieData]; if ([cookie isKindOfClass:[NSHTTPCookie class]]) { [[NSHTTPCookieStorage shanetworkingHTTPCookieStorage] setCookie:cookie]; return YES; } else return NO; } else return NO; } 

Quiero crear un button de cierre de session y necesito un método en mi APIManager.m para eliminar las cookies.

 NSHTTPCookie *cookie; NSHTTPCookieStorage *storage = [NSHTTPCookieStorage shanetworkingHTTPCookieStorage]; for (cookie in [storage cookies]) { [storage deleteCookie:cookie]; } 

Para borrar NSUserDefault:

 NSString *domain = [[NSBundle mainBundle] bundleIdentifier]; [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:domain];