我正在开发一个Objective-c项目,该项目从社区网站下载网页并解析结果。下载代码如下所示:
NSError* error = nil;
NSString* text = [NSString stringWithContentsOfURL:fileUrl encoding:NSASCIIStringEncoding error:&error];
if(text) {
return text;
}
else {
NSLog(@"Error = %@", error);
return nil;
}
奇怪的是,当我从网站下载时,我看到结果内容,我只会看到登录到网站(在我的浏览器中,我是)。
该方法(NSString stringWithContentsOfURL:encoding:error)在执行请求时是否使用浏览器cookie?如果是这样,那么Safari是否与其集成?默认浏览器?我似乎无法找到描述我所看到的行为的文档。我对这种行为感到满意(事实上,它更可取),但如果我完全理解这种情况,我只想依赖它。
感谢您的时间。
答案 0 :(得分:1)
Cookie会自动处理并存储在应用的NSHTTPCookieStorage
共享实例中。调用cookies
方法并检查您的cookie是否存在。如果是,那就证实了你的怀疑。
UIWebView
并从那里登录。在这种情况下,那么是的,cookie存储在您应用的NSHTTPCookieStorage
共享实例中,并将用于进一步的URL请求。