Я не понимаю следующую ситуацию.
На бэкэнде я использую Tomcat. Tomcat автоматически отправляет cookie с именем JSESSIONID
, которое выглядит примерно так, как cookie-value = FE3C82283FA06B9BE79EF1CE50AEB32E
.
Для свойства max-age задано значение session, и этот файл cookie всегда отправляется сервером.
Теперь на своем веб-сайте я запускаю следующий код javascript:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<h1>Hello From Cookie-LocalStorage-Demo</h1>
<div id="list_cookies_div">
</div>
<script>
function print_cookies() {
console.log("document.cookie = " + document.cookie);
var cookies = document.cookie.split(';');
console.log("print_cookies: cookies.length = " + cookies.length);
for (var i = 0 ; i < cookies.length; i++) {
var div = document.getElementById("list_cookies_div");
div.innerHTML += "Cookie Value = " + cookies[i] + "<br/>"
console.log(i + ":" + cookies[i]);
}
}
window.onload = print_cookies;
</script>
</body>
</html>
Когда я запускаю этот веб-сайт, на выходе получается "", так что в основном ничего. Фактически я выгляжу вот так:
С другой стороны, когда я смотрю на Инструменты разработчика браузера, я вижу файл cookie (см. Снимок экрана):
Почему файл cookie отображается в инструментах разработчика, но недоступен из javascript на странице?
/Cookie-LocalStora...
). Вы не сможете прочитать его где-либо еще, например/
. - person Álvaro González   schedule 25.08.2019HttpOnly
. Спасибо за этот ответ - person toom   schedule 25.08.2019