【问题标题】:Setting a cookie with sessionOnly:False [duplicate]使用 sessionOnly:False 设置 cookie [重复]
【发布时间】:2017-04-07 17:51:00
【问题描述】:

有没有办法在 Swift 中手动设置不会在会话结束时过期的 cookie? The docssessionOnly 应该默认为 false 并且可以使用 discard 属性进行设置,但它似乎对我不起作用。我试过了:

import Foundation


let cookie = HTTPCookie(properties: [
    .domain: ".google.com",
    .path: "/",
    .name: "foo",
    .value: "bar",
    .discard: "FALSE"
])!


HTTPCookieStorage.shared.setCookie(cookie)

let cookies = HTTPCookieStorage.shared.cookies(for: URL(string: "https://google.com")!)

print(cookies)
// Optional([<NSHTTPCookie version:0 name:"foo" value:"bar" expiresDate:(null) created:2016-11-23 16:00:37 +0000 sessionOnly:TRUE domain:".google.com" partition:"none" path:"/" isSecure:FALSE>])

但如图所示,生成的 cookie 的 sessionOnly 值为 true。

【问题讨论】:

  • 你搞定了吗?

标签: swift http cookies


【解决方案1】:

(static let discard: HTTPCookiePropertyKey = "FALSE") 应该根据 Apple 文档工作。

【讨论】:

    猜你喜欢
    • 2014-01-03
    • 2013-11-28
    • 2012-09-21
    • 2017-09-05
    • 2018-04-09
    相关资源
    最近更新 更多