2

我正在使用适用于 iOS 的 AFNetworking 框架。我已将 AFHttpClient 子类化并将其用作单例,即[TestAFClient sharedClient]

我正在使用需要使用 .ASPXAUTH cookie 的 ASP.NET Web 服务 API。首先,我必须进行身份验证,接收 .ASPXAUTH cookie 作为响应,然后必须在每个后续请求中传递这个 cookie。

经过几次测试后,似乎因为我使用的是单例 AFHTTPClient,.ASPXAuth cookie 仍然存在,因此不需要显式存储 cookie。

但是,作为我的应用程序的一部分,我需要在某个时候“注销”。

为了注销,清除此 cookie 的最有效方法是什么?将单例设置为nil并重新初始化它?做类似的事情setValue:forKey:

此外,我明确存储 .ASPXAUTH cookie 更好吗?如果需要,这会过期还是自动续订?

谢谢,

罗比

4

1 回答 1

11

Cookies 实际上由底层 URL 加载系统处理,类似于NSURLCache. 对于[NSHTTPCookieStorage sharedHTTPCookieStorage],您需要在您的 中找到 cookie baseURL,然后将其删除。您可以以相同的方式显式设置或修改现有 cookie。

于 2012-03-29T22:51:36.493 回答