我正在开发我的应用程序 - 它几乎就是这个。我有一个登录框,用户登录,然后在返回时保存cookie数据,如下所示:
NSArray * all = [NSHTTPCookie cookiesWithResponseHeaderFields:[resp allHeaderFields] forURL:[NSURL URLWithString:@"http://myurl]];
NSHTTPCookieStorage *sharedHTTPCookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
[sharedHTTPCookieStorage setCookies:all forURL:[NSURL URLWithString:@"http://myurl"] mainDocumentURL:nil];
保险箱后,我把它带到家庭视图 - 我的问题是 - 如果用户关闭prgoram,手机重新启动等等 - 手机上的cookie存储在本地吗?我想在didFinishLaunchingWithOptions上再次访问该cookie。我现在有以下代码..
NSHTTPCookieStorage *sharedHTTPCookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
NSArray *cookies = [sharedHTTPCookieStorage cookiesForURL:[NSURL URLWithString:@"http://iphone.wazgood.com"]];
NSLog(@"count: %i", [cookies count]);
每一次 - 它都会在cookie数据上显示空洞 - 任何关于每次用户是否清除程序时是否清除cookie的想法 - 或者是否在iPhone模拟器上进行测试?
答案 0 :(得分:2)
如果您或其他任何人仍然遇到此问题,可能会在会话结束时(应用关闭时)将Cookie设置为过期。您可以通过查看sessionOnly
的{{1}}属性(getter方法为NSHTTPCookie
)来检查此行为。