【问题标题】:How to stay connected in an iOS webapp?如何在 iOS 网络应用中保持连接?
【发布时间】:2020-05-01 15:38:51
【问题描述】:

我正在开发一个需要用户登录的 iOS 网络应用程序。 目前,当应用程序关闭或进入后台以及用户重新打开应用程序时,我将 cookie 存储在钥匙串中,我加载存储的数据并记下 cookie。 但我的问题是我不知道如何重新加载网站以避免用户需要租用他的凭据。

这是我加载 cookie 的操作

func loadCookies(){
    print("loading")
    let url = URL(string: "mobi.kronos-sport.com")!
    let keychain = KeychainSwift()
    let data=keychain.allKeys
    for key in data {
        let value = keychain.get(key)!
        var dayComponent    = DateComponents()
        dayComponent.day=21
        let theCalendar     = Calendar.current
        let nextDate        = theCalendar.date(byAdding: dayComponent, to: Date())

        print("k \(key) v \(value)")
        let httpCookie = HTTPCookie.init(properties:
            [HTTPCookiePropertyKey.version : "0",
             HTTPCookiePropertyKey.name : key,
             HTTPCookiePropertyKey.path : "/",
             HTTPCookiePropertyKey.value : value,
             HTTPCookiePropertyKey.expires : nextDate])
        if let cookie = httpCookie {
            HTTPCookieStorage.shared.setCookie(cookie)
        }
    }
}

控制台日志显示它找到了正确的键/值对

【问题讨论】:

    标签: ios logging web-applications session-cookies


    【解决方案1】:

    似乎有一个服务器端配置阻止恢复会话(cookie cookie 安全)

    【讨论】:

      猜你喜欢
      • 2010-12-21
      • 1970-01-01
      • 2015-07-02
      • 1970-01-01
      • 1970-01-01
      • 2016-12-21
      • 1970-01-01
      • 2015-07-24
      • 2021-09-29
      相关资源
      最近更新 更多