Comment puis-je utiliser des cookies en utilisant AFHTTPRequestOperationManager dans AFNetworking 2.0+?

Comme on le sait, AFHTTPSessionManager dans AFNetworking 2.0+ supporte les cookies.

Mais est-il possible que AFHTTPRequestOperationManager dans AFNetworking 2.0+ prenne en charge les cookies?

Oui. AFNetworking utilise le système de chargement d'URL de base, qui gère les cookies prêts à l'emploi.

Vous pouvez configurer setHTTPShouldHandleCookies de NSMutableURLRequest et utiliser NSHTTPCookieStorage pour les stocker.

En Objective-C:

 NSArray *cookieStorage = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:url]; NSDictionary *cookieHeaders = [NSHTTPCookie requestHeaderFieldsWithCookies:cookieStorage]; NSMutableURLRequest *request = [myRequestSerializer requestWith…]; for (NSSsortingng *key in cookieHeaders) { [request addValue:cookieHeaders[key] forHTTPHeaderField:key]; } 

Dans Swift:

 var request = NSMutableURLRequest() // you can use an AFNetworking Request Serializer to create this if let cookieStorage = NSHTTPCookieStorage.sharedHTTPCookieStorage().cookiesForURL(url) { for (headerField, cookie) in NSHTTPCookie.requestHeaderFieldsWithCookies(cookieStorage) { request.addValue(cookie, forHTTPHeaderField: headerField) } }