- (void)setCookieWithDomain:(NSString*)domainValue
sessionName:(NSString *)name
sessionValue:(NSString *)value
expiresDate:(NSDate *)date{
NSURL *url = [NSURL URLWithString:domainValue];
NSStriing *domain = [url host];
if (!isNotEmpty(domain)) {
return;
}
//创建字典存储cookie的属性值
NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];
//设置cookie名
[cookieProperties setObject:name forKey:NSHTTPCookieName];
//设置cookie值
[cookieProperties setObject:value forKey:NSHTTPCookieValue];
//设置cookie域名
[cookieProperties setObject:domain forKey:NSHTTPCookieDomain];
//设置cookie路径 一般写"/"
[cookieProperties setObject:@"/" forKey:NSHTTPCookiePath];
//设置cookie版本, 默认写0
[cookieProperties setObject:@"0" forKey:NSHTTPCookieVersion];
//设置cookie过期时间
if (date) {
[cookieProperties setObject:date forKey:NSHTTPCookieExpires];
}else{
[cookieProperties setObject:[NSDate dateWithTimeIntervalSince1970:([[NSDate date] timeIntervalSince1970]+365*24*3600)] forKey:NSHTTPCookieExpires];
}
[[NSUserDefaults standardUserDefaults] setObject:cookieProperties forKey:@"app_cookice"];
//删除原cookie, 如果存在的话
NSArray * arrayCookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies];
for (NSHTTPCookie * cookice in arrayCookies) {
if ([cookice.domain rangeOfString:domain].length>0) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookice];
}
}
//使用字典初始化新的cookie
NSHTTPCookie *newcookie = [NSHTTPCookie cookieWithProperties:cookieProperties];
//使用cookie管理器 存储cookie
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:newcookie];
}
iOS 设置Cookie
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 获取本地的cookie,[SystemConfigure shareSystemConfigure].get_kH...
- 近期做了一个需要与Webview交互的项目,需要实现网页上的自动登录功能,参考了一些OC的代码,改为Swift 首...
- 在使用UIWebView访问网站时,经常遇到的一个问题是需要登录。比如访问新浪微博,或者访问某个个人账号,但是需要...