IOS的Cookie之网页身份认证与Session的追踪

本文探讨了iOS中Cookie的概念,包括其作用、限制、生命周期和原理。重点介绍了与Cookie相关的类NSHTTPCookieStorage和NSHTTPCookie,它们分别用于管理Cookie和代表Cookie对象。文章详细阐述了这两个类的功能,如如何创建Cookie,以及如何通过NSHTTPCookieStorage来操作和获取Cookie。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Cookie 是什么?

答:指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据。从定义上得出,Cookie实际上是指小量信息,是由 Web 服务器创建的,将信息存储在用户计算机上的文件。

2、Cookie 有什么作用?

答:从第一问的回答中,我们就可以知道Cookie的作用。Cookie 的作用是:为了辨别用户身份、进行Session 跟踪。

3、Cookie的限制?

答:一个网页能创建的Cookie 数量最多为 300 个,并且每个不能超过 4KB,每个 Web 站点能设置的 Cookie 总数不能超过 20 个。

4、Cookie的原理

答:Cookie”是小量信息,由服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。

5、Cookie 的生命有多长?

答:Cookie在生成时就会被指定一个Expire值,这就是Cookie的生存周期,在这个周期内Cookie有效,超出周期Cookie就会被清除。有些页面将Cookie的生存周期设置为“0”或负值,这样在关闭浏览器时,就马上清除Cookie,不会记录用户信息,更加安全。注意:对于IOS客户端Cookie的生命周期是:IOS的Cookie是在网页产生而产生,并缓存到内存中。当App关闭时,App产生的内存就会被释放。所以Cookie 就也被清楚。

第二:与Cookie相关的类。

NSHTTPCookieStorage 和 NSHTTPCookie  。这两个类的作用分别是:NSHTTPCookieStorage 是网页产生的cookie的管理器,它控制Cookie的一些基本操作。NSHTTPCookie是Cookie的使用对象,通过这个对象我们可以获取与Cookie相关的信息。

第三:NSHTTPCookieStorage 与 NSHTTPCookie  两个类的介绍。

1、NSHTTPCookie 介绍。

1》NSHTTPCookie 继承与NSObject ,拥有一个NSHTTPCookieInternal类型的私有变量_cookiePrivate。NSHTTPCookieInternal 这个类在静态库中查找不到,网上收索没有使用记录。

2》Cookie的创建有两个方法,如下:

1)实例方法:
- (nullable instancetype)initWithProperties:(NSDictionary<NSHTTPCookiePropertyKey, id> *)properties;

2)类方法:
+ (nullable NSHTTPCookie *)cookieWithProperties:(NSDictionary<NSHTTPCookiePropertyKey, id> *)properties;
知识扩展:
NSHTTPCookiePropertyKey  是一个字符串类型。起始就是 NSString ,这里它使用了别名(alias)。有它定义了13个字符串常量。如下:


3》将Cookie转化为网络请求的头文件。

+ (NSDictionary<NSString *, NSString *> *)requestHeaderFieldsWithCookies:(NSArray<NSHTTPCookie *> *)cookies;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值