Почему я не могу получить cookie-файл JSESSIONID в GWT на стороне клиента? - PullRequest
1 голос
/ 03 января 2012

У меня есть код GWT на странице index.jsp, и когда я просматриваю информацию о странице (security / cookies), я вижу файл cookie JSESSIONID, назначенный для subdomain.mysite.com.

Когдав своем коде на стороне клиента я делаю это:

Window.alert("cookies=" + Cookies.getCookieNames().toString);

Я вижу два куки, которые назначены для mysite.com, но я не вижу JSESSIONID.Текущий URL-адрес страницы - subdomain.mysite.com - разве он не должен давать мне cookie?При обновлении или отображении файлов cookie в событии щелчка я все еще не вижу файл cookie JSESSIONID.

Почему я не могу получить его на стороне клиента?

Ответы [ 2 ]

7 голосов
/ 03 января 2012

Ваш сервер приложений настроен для установки флага HTTPOnly в файле cookie JSESSIONID?Если это так, код на стороне клиента не сможет его увидеть

См. https://www.owasp.org/index.php/HttpOnly

Обычно рекомендуется установить флаг HTTPOnly для безопасности - можете ли вы уточнить, зачем вам нужен доступ кJSESSIONID cookie в вашем коде на стороне клиента?

0 голосов
/ 03 января 2012

Это действительно произойдет, если в куки установлен флаг HTTPOnly, как объяснил Chi.Если ваша единственная цель - получить идентификатор текущей сессии в контексте JavaScript, вы можете просто позволить JSP / EL напечатать его, как если бы это была переменная JS:

<script>var jsessionid = '${pageContext.session.id}';</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...