如何解决无法使用iFrame中的JavaScript在Cookie上设置SameSite属性
我在使用JavaScript使用SameSite = none设置cookie时遇到问题。
我有一个客户网站,该网站将我们网站中的内容提取到iFrame中。我需要能够在(客户端站点的)用户的计算机上设置Cookie,该Cookie会在用户下次访问iFrame时记住布局首选项。
我有以下代码在非Chrome浏览器中可以正常运行:
function setCookie(c_name,value,exdays) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
document.cookie = c_name + "=" + c_value;
}
但是,如果我添加一行(在下面突出显示)以添加SameSite和Secure属性,则不会设置Cookie(在任何浏览器中):
function setCookie(c_name,exdays) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
**if (c_name == "preferenceCookie") { c_value += ";SameSite=None;Secure" };**
document.cookie = c_name + "=" + c_value;
}
我确定我想念的东西非常明显,但这让我发疯了。 (或者只是做不到?)
(哦-这是我的第一篇文章-请保持温柔!)
谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。