博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SwiftCommon之Cookie处理
阅读量:6437 次
发布时间:2019-06-23

本文共 1665 字,大约阅读时间需要 5 分钟。

hot3.png

概述

在IOS中,cookie数据是由NSHTTPCookieStorage类来管理的,从其类名可以看出,这是一个仓库,一个专门存放Cookie数据的仓库。我们从中获取一个Cookie,得到到的是一个NSHTTPCookie类,它包装了一个完整的Cookie,我们通过这个类可以获取Cookie的各种信息。

在默认情况下,当一个网络请求接收到Cookie数据时,会自动保存下来,下次请求会自动带上Cookie,我们无需插手。不过我们也要清楚如何取查询这些被保存的Cookie。

SCCookie类是一个简单的封装,通过几个类方法可以快速获得需要的Cookie值。

SCCookie类

import Foundation/// 访问Cookie的相关方法public class SCCookie{            /// 获取存放Cookie的Storage    public class func GetCookieStorage()->NSHTTPCookieStorage{        return NSHTTPCookieStorage.sharedHTTPCookieStorage()    }        /// 获取所有Cookie数组    public class func GetCookieArray()->[NSHTTPCookie]{                let cookieStorage = GetCookieStorage()        let cookieArray = cookieStorage.cookies        if let arr = cookieArray{            return cookieArray as! [NSHTTPCookie]        }        else{            return []        }    }        /// 获取Cookie值    public class func GetCookieByName(let cookieName:String)->String?    {        let cookieArray:[NSHTTPCookie] = GetCookieArray()        var value:String?        if cookieArray.count > 0        {                        for cookie in cookieArray            {                                if cookie.name == cookieName                {                    value = cookie.value                    break                }            }        }        return value    }        /// 根据Cookie内容数据,获取一个对应的NSDictionary数据    public class func GetRequestFiledByCookie(let cookieAttay:[NSHTTPCookie])->NSDictionary{                let requestFiled = NSHTTPCookie.requestHeaderFieldsWithCookies(cookieAttay)        return requestFiled as NSDictionary    }}

Git地址

tips:

本文由导入,原文链接:

转载于:https://my.oschina.net/lijialong/blog/485050

你可能感兴趣的文章
CentOS 7 yum方式快速安装MongoDB
查看>>
DBCP针对不同数据库的validationQuery
查看>>
mysql中varchar与integer的互转
查看>>
Varnish的性能调优
查看>>
linux solrcloud zookeeper分布式集群部署
查看>>
通过流进行字符集编码转换
查看>>
详细讲述STP过程【转自56cto.com】
查看>>
在Office 365 添加就地保留用户邮箱
查看>>
vue axios 返回参数 响应参数
查看>>
yum源
查看>>
PHP学习笔记1
查看>>
《3D数学基础》实践1 向量类代码分析
查看>>
ligerui layout拖动中间分隔条宽度后,重新调整两边控件的宽度
查看>>
我的友情链接
查看>>
centos 安装PHP7并且与其他版本共存并且为PHP7安装redis扩展
查看>>
jquery的$.each和$().each
查看>>
6月共处理钓鱼网站8186个:非CN域名达8029个
查看>>
美国域名总量跌至7971万:4月上旬降幅缩小32.4%
查看>>
cobbler自动化安装详解
查看>>
微信浏览器内打开App Store链接
查看>>