IOS-54-IOS开发中cookie的作用简介
来源:互联网 发布:ps ef grep java 编辑:程序博客网 时间:2024/06/05 11:23
一般在网页中用到cookie、session等机制。其实涉及到浏览器的一般都需要。
当然我将cookie用在iOS上了,作用是识别用户,实现自动登录机制,应用场景是这样的:
正常流程:登录成功—>服务器返回一个cookie—>存储到本地—>获取充电站信息—>关闭应用程序(不是退出账号)—>再次打开应用—>自动登录方法—>获取充电站信息
1.SESSION与COOKIE区别:
Session 将信息保存在服务器上.服务器在接受到唯一的SESSION_ID后,根据这个ID获取相关数据,然后将信息传递到客户端(浏览器).
Cookie 是将所有信息以文本的形式存在本地文件,并由客户端(浏览器)进行管理与维护.
因为Session 数据存储在server端,所以远程client无法对数据进行修改;而Cookie存储在client本地,容易被获取和篡改.所以Session安全性较高.
2.cookie: 是一种远程客户端存储数据和跟踪识别用户的机制.是服务器临时存放数据在本地用户的一个文本文件.文本文件格式:”用户名@网站地址[数字].txt”
3.当前我开发的APP中,主要是用于域名、用户跟踪
iOS中存储cookie信息:
/** * 手动添加3份cookies(登录后,服务端会传一份cookie,由于目前有4个domain需要用到该cookie,因此需要手动创建3份对应domain的cookie) * 登录的domain为api.·····.com */+ (void)addTELDSIdCookies { //http://····.······.cn/···· NSArray *domainArr = @[kCMSApiDomain,kSMSApiDomain,kWxDomin]; NSHTTPCookie *TELDSIDCookie = [self TELDSIDCookie]; if (TELDSIDCookie) { for (int i = 0; i < [domainArr count]; i++) { NSMutableDictionary *propertiesDic = [NSMutableDictionary dictionary]; [propertiesDic setObject:domainArr[i] forKey:NSHTTPCookieDomain]; [propertiesDic setObject:TELDSIDCookie.name forKey:NSHTTPCookieName]; [propertiesDic setObject:TELDSIDCookie.value forKey:NSHTTPCookieValue]; [propertiesDic setObject:TELDSIDCookie.path forKey:NSHTTPCookiePath]; [propertiesDic setObject:@"0" forKey:NSHTTPCookieVersion]; NSHTTPCookie *newCookie = [NSHTTPCookie cookieWithProperties:propertiesDic]; [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:newCookie]; } }}/** * 清除所有TELDSIdCookies */+ (void)deleteAllTELDSIdCookies { NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; NSArray *cookiesArr = [cookieStorage cookies]; [cookiesArr enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { NSHTTPCookie *cookie = obj; if ([cookie.name isEqualToString:kBaseCookieName]) { [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie]; } }];}// 取TELDSID cookie+ (NSHTTPCookie *)TELDSIDCookie { NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; NSArray *cookiesArr = [cookieStorage cookies]; for (NSHTTPCookie *cookie in cookiesArr) { if ([cookie.name isEqualToString:kBaseCookieName] && [cookie.domain isEqualToString:kBaseApiDomain]) { return cookie; } } return nil;}
本周提交测试、有一些bug要改,这个月发正式版,希望尽快完成!
0 0
- IOS-54-IOS开发中cookie的作用简介
- iOS开发ASIHTTPRequest中Cookie的使用
- iOS开发ASIHTTPRequest中Cookie的使用
- iOS开发ASIHTTPRequest中Cookie的使用
- iOS开发中NSURLRequest cookie的操作
- iOS中block简介-作用域
- iOS中block简介-作用域
- iOS中block简介-作用域
- iOS中Cookie的使用
- iOS中Cookie的使用
- iOS开发ASIHTTPRequest中Cookie的使用【6】
- iOS开发-@class的作用
- IOS开发:iOS的xmppframework简介
- iOS开发中static变量的三大作用
- ios 中appdelegate的作用
- ios 中registerClass的作用
- ios开发之ASIHTTPRequest-Cookie的使用
- ios开发中, Block的简介及用法
- webservice 客户端对应xml解析
- system(函数)
- 集群环境下的文件上传和下载和文件服务器的配置
- 详解 Masonry
- 优酷分享iframe播放器页面存在dom xss漏洞(附漏洞分析过程)
- IOS-54-IOS开发中cookie的作用简介
- Microsoft SQL Server 自定义函数整理大全
- Benchmark库的建立06:变量溢出 Bug
- 19. Remove Nth Node From End of List
- 常用人脸库
- 网络请求设置 && arc&mrc互转
- 可能是最鸡汤的面经
- 黑马程序员_代码块
- Python中用feedparser解析RSS