Javascript document.cookie过期在Safari中无法正常工作
我有一个脚本,我在cookies中保存登录信息(电子邮件/加密pwd)大约10年。它在Firefox中运行,但在Safari(MacOS上)中只保存了几天 以下是我正在使用的代码:Javascript document.cookie过期在Safari中无法正常工作,javascript,cookies,safari,Javascript,Cookies,Safari,我有一个脚本,我在cookies中保存登录信息(电子邮件/加密pwd)大约10年。它在Firefox中运行,但在Safari(MacOS上)中只保存了几天 以下是我正在使用的代码: function setCookie(name, value, days) { if (days) { var expires = new Date(); expires.setTime(expires.getTime() + (days*24*60*60*1000))
function setCookie(name, value, days)
{
if (days)
{
var expires = new Date();
expires.setTime(expires.getTime() + (days*24*60*60*1000));
}
document.cookie = name + '=' + escape(value) + '; path=/' + ((expires == null) ? '' : '; expires=' + expires.toGMTString());
}
function saveLoginCookies()
{
var keepEmail = $('#keepemail')[0];
if (keepEmail.checked)
setCookie('email', $('#email').val(), 3650);
else
delCookie('email');
var keepPwd = $('#keeppwd')[0];
if (keepPwd.checked)
{
setCookie('email', $('#email').val(), 3650); // to make sure we have both the email and pwd even if keepemail is not checked
setCookie('encpwd', $("#encpwd").val(), 3650);
}
else
delCookie('encpwd');
}
以下是Firefox中的cookies:
在狩猎中
感谢您的帮助
谢谢
Jean改为本地存储…服务器需要这些数据,所以我不能使用本地存储(我想)。我认为这种编码方式在今天是不可接受的。从服务器直接访问已经成为所有用户cookies的后门,对于页面上的每个广告iFrame,我想苹果的政策在这个问题上是强硬的,他们是对的。如果确实需要从服务器检索用户信息,请使用localStorage并添加Ajax,这也是GDPR的问题,用户可以选择是否使用每个浏览器[或系统]提供的密码管理器。更改为localStorage…服务器需要该数据,因此我无法使用本地存储(我认为).我认为这种编码方式在今天是不可接受的。从服务器直接访问已经成为所有用户cookies的后门,对于页面上的每个广告iFrame,我想苹果的政策在这个问题上是强硬的,他们是对的。如果确实需要从服务器检索用户信息,请使用localStorage并添加Ajax,这也是GDPR的问题,用户可以选择是否使用每个浏览器[或系统]提供的密码管理器。