iOS为我们设计了一个独立的专门用来管理Cookie数据的类:NSHTTPCookieStorage,其中一个Cookie数据对应一个NSHTTPCookie类。
NSHTTPCookie是对一个Cookie数据的封装,以便我们读取Cookie内容。
其实默认情况下,我们可以不用管Cookie的,如果Response中带有Cookie,IOS会自动调用NSHTTPCookieStorage,把Cookie数据保存下来。当有新的请求时,NSURLRequest会自动带上相应的Cookie数据。
//
// getCookie.swift
// iosTest
//
reserved.
// 获取cookie值
//
import Foundation
class getMyCookie{
//根据名字获取Cookie值
public class func GetCookieByName(cookieName:String)->String?
{
let cookieArray:[HTTPCookie] = GetCookieArray()
var value:String?
if cookieArray.count > 0
{
for cookie in cookieArray
{
if cookie.name == cookieName
{
value = cookie.value
break
}
}
}
return value
}
private class func GetCookieStorage()->HTTPCookieStorage{
return HTTPCookieStorage.shared
}
private class func GetCookieArray()->[HTTPCookie]{
let cookieStorage = GetCookieStorage()
let cookieArray = cookieStorage.cookies
if cookieArray != nil{
return cookieArray as! [HTTPCookie]
}
else{
return []
}
}
}