我正在尝试使用Swift编写一些cookies,以便在显示网络视图时,它将能够读取这些cookies并做出适当的反应。我找到了许多创建cookie和阅读Apple文档的示例,但似乎无法获得有效的NSHTTPCookie对象。它总是为空。
这是我的代码:
let baseHost = "domain.com"
let oneYearInSeconds = NSTimeInterval(60 * 60 * 24 * 365)
func setCookie(key: String, value: AnyObject) {
var cookieProps = [
NSHTTPCookieOriginURL: baseHost,
NSHTTPCookiePath: "/",
NSHTTPCookieName: key,
NSHTTPCookieValue: value,
NSHTTPCookieSecure: "TRUE",
NSHTTPCookieExpires: NSDate(timeIntervalSinceNow: oneYearInSeconds)
]
var cookie = NSHTTPCookie(properties: cookieProps)
// This line fails due to the nil cookie
NSHTTPCookieStorage.sharedHTTPCookieStorage().setCookie(cookie!)
}
我的cookie
变量是nil
。我已经尝试了许多属性的组合,包括同时使用NSHTTPCookieOriginURL
和NSHTTPCookieDomain
,有或没有NSHTTPCookieSecure
,甚至没有NSHTTPCookieExpires
也尝试过。始终是nil
。
有人知道我哪里做错了吗?
.domain
,但它返回了nil,然后我将其更改为.originURL
,现在它可以工作了 ♂️ - LinusGeffarth