Когда вам предоставляется веб-страница, кто создает документ DOM? Это строго сервер печати HTML? Как работает браузер? Мне особенно интересно узнать, как заполняется свойство document.cookie.
A) Сервер заполняет document.cookie
- Браузер сохраняет куки для foobar.com на жестком диске пользователя.
- При следующем посещении foobar.com браузер представляет все файлы cookie для foobar.com на сервер.
- Сервер создает свойство DOM document.cookie на основе этих файлов cookie.
B) Браузер заполняет document.cookie
- Браузер сохраняет куки для foobar.com на жестком диске пользователя.
- При следующем посещении foobar.com сервер приступит к созданию и обслуживанию HTML.
- Где-то до или после того, как браузер захватывает все куки на жестком диске и заполняет document.cookie.
Мне интересна эта информация, потому что я изучаю, как удаление файлов cookie на прокси-серверах, таких как Varnish и Squid, может влиять на файлы cookie. Если document.cookie был создан сервером (опция A выше), то я бы предположил, что удаление cookie с помощью прокси повлияет на свойство document.cookie. Однако я склонен думать, что дело B в том, что на сервере Varnish у меня есть указание специально удалять cookie, но данные cookie остаются постоянными в document.cookie даже после удаления их из запроса.
Этот вопрос особенно важен для людей, у которых есть веб-сайты, скрывающиеся за Varnish, поскольку запрос, сопровождаемый файлом cookie, сводит на нет использование кэшированных данных и генерирует бэк-энд.