Я пытался достичь цели создания уникального (не общего) кука файла cookie для WebView в Mac OS X (управление файлами cookie отличается для iOS).
После прочтения большого количества вопросов StackOverflow и копания документов я нашел самое близкое решение моей проблемы в этих статьях:
- http://cutecoder.org/programming/implementing-cookie-storage/ (как обрабатывать файлы cookie HTTP)
- http://cutecoder.org/programming/handling-cookies-javascript-custom-jar/ (как обрабатывать файлы cookie JavaScript.cookie)
Я установил пример приложения, используя их: https://github.com/jjconti/swift-webview-isolated
Основная идея - реализовать необходимые методы из протоколов WebResourceLoadDelegate и WebPolicyDelegate и использовать BSHTTPCookieStorage для хранения и извлечения файлов cookie. Кроме того, мое приложение-пример позволяет сохранить объект cookieStorage, чтобы его можно было перезагрузить в будущих исполнениях.
К сожалению, приложение не работает нормально на каждом веб-сайте (автор статей ориентировался на один конкретный веб-сайт). Например, Gmail и NewRelic вы сразу же выходите из системы после входа в систему (или после выполнения некоторых действий). Это заставляет меня подозревать ошибку в реализации хранилища файлов cookie, которую я еще не смог найти.
Может ли кто-нибудь указать мне, если что-то не хватает?