0

我的代码

[[request responseHeaders] objectForKey:@"Set-Cookie"]

这些结果

曲奇名称1=1234;路径=/; httponly,cookiename2=1234;路径=/; httponly

如何仅获取 cookiename1 的值?

提前致谢。

4

1 回答 1

0

ASIHTTPRequest 我相信是一个死项目,也许考虑使用另一个?我真的很喜欢使用AFNetworking

不过,你需要那个特定的 cookie 来做什么。我相信 Set-Cookie 下的 cookie 应该由图书馆自动为您设置。

如果您真的需要实际查看结果,它只是一个字符串,因此您必须进行一些字符串解析。正则表达式可能是最好的。我相信这个例子可能有效,但我不确定。我目前无法测试,事实上我目前什至没有可用的 Xcode。所以很可能有一些语法错误:

NSError *error = nil;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"cookiename1=*;" options:0 error:&error];
NSTextCheckingResult *result = [regex firstMatchInString:cookies options:0 range:NSRangeFromString(cookies)];
NSString *stringResult = [cookies substringWithRange:[result range]];

然后从那里你有来自 cookiename1=...; 的 cookie 你可以提取它。去掉结尾的分号,最后用“=”分割,就可以得到cookie的值了。

于 2012-05-24T20:08:56.800 回答