知识点分析
2019-06-10 本文已影响0人
woniu
一、cookie的存储
1、NSHTTPCookieStorage
NSHTTPCookieStorage提供了管理所有NSHTTPCookie对象的接口,在OS X里cookie是在所有程序中共享的,而在iOS中,cookie只当当前应用中有效。NSHTTPCookieStorage类采用单例的设计模式,其中管理着所有HTTP请求的Cookie信息,更改cookie的接受政策将会影响当前所有正在使用cookie的app。
2、NSHTTPCookie
NSHTTPCookie对象代表一个HTTP cookie。 这是一个不可改变的对象,从一个包含cookie的属性的字典初始化,这个类可以用来手动创建cookie的Properties 。
知识点链接
- (void)localSetTokenCookie_copy:(NSDictionary *)response error:(NSError *)error
{
NSString *token = response[@"data"][@"sessionid"];
NSURL *url = [NSURL URLWithString:self.addressOnlinePlayBack];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPShouldHandleCookies:YES];
NSDictionary*properties = [[NSMutableDictionary alloc] init];
[properties setValue:token forKey:NSHTTPCookieValue];//value值
[properties setValue:@"Playback" forKey:NSHTTPCookieName];//kay
[properties setValue:[url host] forKey:NSHTTPCookieDomain];
[properties setValue:[url path] forKey:NSHTTPCookiePath];
[properties setValue:[NSDate dateWithTimeIntervalSinceNow:60*60] forKey:NSHTTPCookieExpires];
NSHTTPCookie*cookie = [[NSHTTPCookie alloc] initWithProperties:properties];
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
[self.playBackView loadRequest:request];
if (_listenBlock)
{
NSError *error = nil;
_listenBlock(YES,error,@"success");
}
}