Swift 3:如何检查特定 URL 的 cookie 是否配置?

Swift 3: how to check if cookies for particular URL are configured?

我正在为 API 使用基于 cookie 的验证构建应用程序,但遇到了几个问题。

我当前的问题是检查是否为域配置了自动登录 cookie 的功能,但我无法正确设置它。

我目前的尝试是:

func cookiesConfigured() -> Bool {
    let cookieStorage = HTTPCookieStorage.shared.dictionaryWithValues(forKeys: ["AutologinCookie"])
    if !cookieStorage.isEmpty {
        return true
    } else {
        return false
    }
    return false // <- will never be executed
}

检查特定 cookie 的 cookie 存储内容的正确方法是什么?

您可能已经意识到,dictionaryWithValues 是一个 NSObject-method,并没有按照您的想法行事。

您需要链接 cookiesForfilterisEmpty

这是获取特定 cookie 的 Swift3 代码。

let cookieJar = HTTPCookieStorage.shared

for cookie in cookieJar.cookies! {

   if cookie.name == "MYNAME" {

      let cookieValue = cookie.value

      print("COOKIE VALUE = \(cookieValue)")
   }
}