gpt4 book ai didi

javascript - JEE Servlet/JS : document. cookie 在 Chrome 和 IE 之间不返回相同的东西

转载 作者:行者123 更新时间:2023-11-29 23:19:14 25 4
gpt4 key购买 nike

我在从 IE 中的响应中获取 cookie 值时遇到问题。在 Chrome 上,一切正常,我有一个名为 fileDownloadToken 的 token ,我将它设置在我的 Java Controller 中,如下所示:

String tokenValue = value;
response.addCookie(new Cookie("fileDownloadToken",tokenValue);

在我的 JS 中,我只需要一个:

var cookieList = document.cookie;

然后我拆分它来搜索我想要的 cookie。

问题来自 IE,我可以看到它在我的响应 header 中:

ReponseHeader in IE

但是当我执行 console.log(document.cookie) 时,我看不到它。所以很明显这不是 HttpOnly 的问题,否则我将无法在 Chrome 中看到它。我还尝试使用以下方法在服务器端设置 cookie:

final StringBuilder cookie =
new StringBuilder("fileDownloadToken=" + new StringBuilder(tokenValue) + "; ");
response.addHeader("Set-Cookie", cookie.toString());

但它不适用于 IE(不过也适用于 Chrome)。

我真的不知道现在该尝试什么。提前致谢。


编辑:我的 JS 中有一个定期检查 cookie 的函数:

var fileDownloadCheckTimer;

function checkDownloadToken() {
fileDownloadCheckTimer = window.setInterval(function() {
var cookieValue = getCookie("fileDownloadToken")
if (cookieValue == token)
clearTimer();
}, 2000);
};

最佳答案

可能关心的人,我添加就解决了问题

cookie.addPath("/");

干杯

关于javascript - JEE Servlet/JS : document. cookie 在 Chrome 和 IE 之间不返回相同的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51385979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com