use*_*302 12 iphone cookies nsurlconnection
我使用异步NSURLConnection从iPhone连接到一个网站.句柄didReceiveResponse在响应时被激活,我试图通过使用来自NSHTTPURLResponse的allHeaderField来获取所有cookie
我看到很多hreader,但没有Set-Cookie - 它看起来像iphone模拟器只是忽略它们...而且我确信cookie存在响应 - 网络监视器显示它们存在
我不使用任何http存储 - 我所要做的就是打印以记录所有标题 - 并且不会看到cookie信息
有人知道这个问题吗?
更新 我做了一些研究:如果我的网站返回自定义标题,如"Custom-Header:value" - 那么这个标题在java客户端中可见,但不在iphone中...
谢谢
Tal*_*key 27
尝试在共享HTTP cookie存储中查找它:
for (NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies])
{
NSLog(@"name: '%@'\n", [cookie name]);
NSLog(@"value: '%@'\n", [cookie value]);
NSLog(@"domain: '%@'\n", [cookie domain]);
NSLog(@"path: '%@'\n", [cookie path]);
}
Run Code Online (Sandbox Code Playgroud)
或者如果在Swift工作:
for cookie in HTTPCookieStorage.shared.cookies!
{
NSLog("name: \(cookie.name)")
NSLog("value: \(cookie.value)")
NSLog("domain: \(cookie.name)")
NSLog("path: \(cookie.path)")
}
Run Code Online (Sandbox Code Playgroud)
我不知道这在应用程序中是否重要,但您在“设置”应用程序中对 Safari 的“接受 Cookie”设置是什么?看看更改为“始终”是否重要。
根据我见过的一些网站,需要完全重新启动 iPhone 才能使此设置生效。