Как оставаться на связи в iOS веб-приложении? - PullRequest
0 голосов
/ 01 мая 2020

Я занимаюсь разработкой iOS веб-приложения, которое требует регистрации пользователя. В настоящее время я храню файлы 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)
        }
    }
}

Журнал консоли показывает, что он находит правильные пары ключ / значение

1 Ответ

0 голосов
/ 01 мая 2020

Похоже, что существует конфигурация на стороне сервера, препятствующая восстановлению сеанса (cook ie cook ie secure)

...