Совместно ли используются файлы cookie между Safari и Webview?

Согласно документации Apple на NSHTTPCookieStorage

Класс NSHTTPCookieStorage предоставляет интерфейс для управления коллекцией объектов NSHTTPCookie, совместно используемых всеми приложениями.

Поэтому, если я не ошибаюсь, поскольку веб-просмотр в OS X использует NSHTTPCookieStorage, а Safari использует веб-просмотры, если я войду на данный веб-сайт в веб-просмотре, Safari будет использовать файлы cookie, установленные веб-просмотром, и когда тот же веб-сайт открывается Safari, он должен быть аутентифицирован.

Мой вопрос в том, используются ли файлы cookie между Safari и Webviews. Если да, то почему приведенный выше тест не работает?


person Samir    schedule 30.05.2012    source источник


Ответы (3)


Согласно документации NSHTTPCookieStorage:

Начиная с OS X 10.11, каждое приложение имеет свой собственный синглтон sharedHTTPCookieStorage, который не будет использоваться совместно с другими приложениями.

Итак, хотя предыдущий ответ был правильным 3 года назад, когда он был написан, сейчас ответ должен быть таким:

1) до OS X 10.11 - Да, они были общими

2) OS X 10.11 и macOS 10.12 — Нет, они больше не используются совместно.

person Ken Aspeslagh    schedule 02.12.2016

Согласно обсуждению на странице Понимание NSHTTPCookieStorage для iPhone, файлы cookie не передаются приложениям.

Это подтверждается в документации в разделе «Хранение файлов cookie»:

Примечание для iOS. Файлы cookie не используются приложениями в iOS.

person Jeff W    schedule 14.11.2012
comment
Что ж, в своем вопросе он говорит об OS X, что, как ни странно, не является iOS. ;-) - person lnafziger; 13.01.2013
comment
@Inafziger Почему ты должен это говорить, в чем смысл? Давно прошли времена, когда люди отвечали только на вопрос ОП. Я пришел из поиска Google и искал ответ для iOS, так что спасибо, Джефф! - person Snowirbis; 19.11.2020

По моему опыту, в OS X ответ звучит утвердительно да. Похоже, что файлы cookie используются совместно Safari и WebViews.

person ipmcc    schedule 28.06.2013
comment
ВАЖНО: см. мой ответ ниже. - person Ken Aspeslagh; 02.12.2016