С исправленным вопросом, новый ответ:
Свойство документации HttpBrowserCapabilitiesBase.Cookies
говорит:
Это свойство не указывает, включены ли в настоящее время файлы cookie в браузере, только в том случае, если браузер может поддерживать файлы cookie.
Похоже, что он настроен на основе обнаружения браузера пользователя и базы данных возможностей браузера на сервере. Таким образом, он надежно сообщит вам, способен ли браузер хранить файлы cookie, если и только если:
- Строка запроса агента пользователя верна.
- Браузер находится в базе данных, и база данных соответствует браузеру.
Условие № 1 будет нарушено, если заголовок HTTP пользовательского агента был изменен (например, средствами разработчика или прокси-сервером). Условие № 2 будет нарушено, если браузер новее, чем база данных, или в базе данных имеется дефект.
tl; dr version: нет гарантии, относитесь к этой информации как к «максимальному усилию». И, конечно же, пользователь мог отключить файлы cookie (например, в «приватном» режиме просмотра).
Оригинальный ответ на другой вопрос:
Если вы хотите, чтобы куки, которые вы отправляете в ответе, всегда возвращались одинаково, тогда ответ будет: обычно, но не полагайтесь на это.
Возможные причины:
- Сценарии на стороне клиента могут быть изменены не только HTTP-файлами cookie (и этот сценарий может быть введен локально).
- Ошибка браузера.
- Использование не браузера для отправки запроса (например,
wget.exe
), который не обрабатывает куки для пользователя.
- Прокси, который изменяет запрос или ответ.
- Изменены локальные часы в клиентской системе, чтобы вызвать истечение срока действия cookie.
- Пользователь, изменяющий хранилище файлов cookie браузера.