我在不使用服务器的情况下创建了一个小项目。在那里我设置cookie以追溯值。如果我在FF,Safari,IE 9中运行这个项目它可以正常设置cookie并重新启动cookie但是在chrome 23.0中它没有设置cookie。
<script>
window.onbeforeunload=function(){
document.cookie = "sample" + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
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;
}
function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name)
{
return unescape(y);
}
}
}
setCookie("sample","samplename",365);
alert(getCookie("sample"));
</script>
在FF,Safari,IE 9中,它显示了cookie值“samplename”但是在chrome 23.0中它显示“undefined”。如果我使用服务器,那么chrome设置cookie。如何在不使用服务器的情况下在chrome中设置cookie。提前致谢
答案 0 :(得分:4)
Chrome似乎忽略了本地文件的Cookie, 如果您使用像xammp这样的本地服务器,它会工作 用127.0.0.1浏览它
或者从命令行
开始使用--enable-file-cookies
标志启动chrome
您可以获得有关此SO question
的更多信息