可能这是一个愚蠢的问题,但我想为相同的 url 存储 cookie,但为用户名存储不同的 cookie。如何使用 NSHTTPCookieStorage 来实现?这就是我从响应中存储 cookie 的方式。
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)response;
NSDictionary *headerFields = [httpResponse allHeaderFields];
NSArray* cookies = [NSHTTPCookie
cookiesWithResponseHeaderFields:headerFields
forURL:[NSURL URLWithString:@""]];
for (NSHTTPCookie *cookie in cookies) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
}
NSString *urlString = ...;
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookies:cookies forURL:[NSURL URLWithString:urlString] mainDocumentURL:nil];
最佳答案
如果我对您的理解正确,您希望为不同的用户设置单独的 cookie 集。如果是这样,那么您应该:
sharedHTTPCookieStorage
目的。 如果我误解了您,并且您出于某种原因想要在共享 cookie 存储之外存储一个特定的 cookie:
当然,这一切都假设 NSURLSession。我认为没有办法使用 NSURLConnection 控制 cookie 存储。所有 cookie 都存储在 cookie jar 、句号、AFAIK 中。
关于ios - NSHTTPCookieStorage 用于相同的 URL 但不同的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37597250/