我正在访问服务器的安全信息,它会根据请求向应用程序发送一堆 cookie。问题是一些cookies只是会话,当我使用时:
[NSHTTPCookie requestHeaderFieldsWithCookies:[[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:[NSURL URLWithString:theCookie]]
它不会返回名称为 JSESSIONID 的会话并导致问题。如果我对完整的 NSHTTPCookieStorage 进行 NSLog 记录,它会显示会话,以便它们在那里,我只是找不到从存储中检索它们的方法。此外,我查看了 cookie plist 并且会话 cookie 没有存储在那里,但我认为这只是因为它们是基于会话的。
任何帮助表示赞赏。
编辑:这是我要求所有 cookie 时得到的片段:
<NSHTTPCookie version:0 name:@\"TheNameOfTheCookie\" value:@\"A variable number\" expiresDate:@\"(null)\" created:@\"301196844.000000\" sessionOnly:TRUE domain:@\"THE URL\" path:@\"/\" secure:FALSE comment:@\"(null)\" commentURL:@\"(null)\" portList:[]>
<NSHTTPCookie version:0 name:@\"JSESSIONID\" value:@\"A variable number\" expiresDate:@\"(null)\" created:@\"301196866.000000\" sessionOnly:TRUE domain:@\"The Same URL as above\" path:@\"/path\" secure:FALSE comment:@\"(null)\" commentURL:@\"(null)\" portList:[]>
现在,当我根据上述 cookie 中的 URL 请求 cookie 时,第一个被返回,第二个没有。
*请注意,对于必须删除某些项目感到抱歉,它们符合预期,与问题无关