Споделят ли се бисквитките между Safari и Webviews?

Според документацията на Apple на NSHTTPCookieStorage

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

Следователно, ако не греша, тъй като Webview на OS X използва NSHTTPCookieStorage, а Safari използва Webviews, ако вляза в даден уебсайт на Webview, Safari ще използва бисквитките, зададени от Webview и когато същото уебсайтът е отворен от Safari, той трябва да бъде удостоверен.

Въпросът ми е дали бисквитките се споделят между Safari и Webviews. Ако е така, защо тестът по-горе не работи?


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


Отговори (3)


Според документацията на NSHTTPCookieStorage:

Започвайки от OS X 10.11, всяко приложение има свой собствен споделен HTTPCookieStorage singleton, който няма да се споделя с други приложения.

Така че докато предишният отговор беше правилен преди 3 години, когато беше написан, отговорът сега трябва да бъде:

1) преди OS X 10.11 - Да, те бяха споделени

2) OS X 10.11 и macOS 10.12 – Не, те вече не се споделят.

person Ken Aspeslagh    schedule 02.12.2016

Според дискусия в Разбиране на NSHTTPCookieStorage за iPhone, бисквитките не се споделят между приложенията.

Това е потвърдено в документацията в раздела „Съхранение на бисквитки“:

Забележка за iOS: Бисквитките не се споделят от приложенията в 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 отговорът е категорично да. Изглежда, че бисквитките се споделят между Safari и WebViews.

person ipmcc    schedule 28.06.2013
comment
ВАЖНО: Вижте моя отговор по-долу. - person Ken Aspeslagh; 02.12.2016