我的命令行测试工具使用NSURLConnection
,干扰了Safari的Cookie。我该如何阻止这种情况发生?
这就是我所看到的:
如果我跳过步骤2-3,Safari中的链接可以正常工作。我的工具显然是其原因。
我正在创建这样的连接:
_connection = [[NSURLConnection alloc] initWithRequest: request
delegate: self
startImmediately: NO];
我没有明确地对cookie做任何事情,只是让默认代码处理它们。
我不确定这里到底发生了什么。如果Safari和我的应用程序真的共享 Cookie,那么Safari的cookie副本是否也会被覆盖?虽然奇怪的行为,一切都会工作,我甚至不知道发生了什么。这是别的。
无论如何,我怎样才能阻止我的命令行工具在Safari中记录人们的会话?
答案 0 :(得分:1)
似乎正确的方法是完全关闭默认的cookie处理,因此它不会触及共享存储。您可以使用-[NSMutableURLRequest setHTTPShouldHandleCookies:NO]
来禁用默认行为,然后从响应中读取Cookie标头,自行存储它们,并根据需要将它们插回到后续的URL请求中。