我已经在Vaadin中设置了cookie,并尝试从另一个在不同服务器上运行的应用程序中获取它,但是我无法获得我在Vaadin中设置的cookie?
我们需要禁用httpOnly cookie。
任何人都可以帮助我“如何解决这个问题?”
答案 0 :(得分:1)
标头Set-Cookie
中设置的Cookie。要获得它,您可以使用以下代码:
URLConnection urlConnection = new URL("url-of-your-web-app-here").openConnection();
List<String> cookiesList = urlConnection.getHeaderFields().get("Set-Cookie");
您可以手动删除标记,方法是删除HttpOnly
:
response.setHeader( "Set-Cookie", "name=value; HttpOnly");
如果您在 Servlet 3.0 或更新的环境中工作,请按照以下步骤配置 web.xml :
<session-config>
<cookie-config>
<http-only>false</http-only>
</cookie-config>
</session-config>
请注意。 HttpOnly
标志是一个附加标志,用于防止 XSS (跨站点脚本)漏洞获取对会话cookie的访问权。
另见: