//输出cookie的代码
var date = new Date();
if($("#isShowDefault").attr("checked") == true) date.setTime(date.getTime() + 180 * 24 * 3600 * 1000);
else date.setTime(date.getTime() - 180 * 24 * 3600 * 1000);
document.cookie = "isSave=true; expires=" + date.toGMTString();//读取cookie的代码
var str = document.cookie;
if(str != "" || str != null){
str = str.split("=");
if(str[1] == "true") window.location = "/index.aspx";
}
以上是我输出和读取cookie的js代码,我本地测试能正常输出和读取,但是发布到IIS服务器上,再测试就不行了,哪位高手帮我下,急啊。!
var str=document.cookie;
var isSave=(str.match(/isSave=(.*?);/)||["",null])[1];
alert(isSave);
你cookie 的domain 是什么
提交请求时会自动加上的
你服务器端要用 request.getCookie()(java 里这么用的)
你的cookie是IIS服务器上的网站写得吗?
不是的话,那是不行的,就像百度的网站读谷歌写得cookie那是绝对不允许的,虽然它们都存储在同一台计算机的同一个地方。
用js设置cookies可以设置,在ie缓存文件夹中也可以看到生成的cookie文件,文件中的内容也是对的,但是读取时却始终读不到。
不知道是不是我没有设置domain还是path的缘故,但不设置,他不是会自动生成的吗?还有我的页面没有进行跳转和跨域。
js代码如下,有谁知道原因,可以解答下,万分感谢。
//设置cookie
function setCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
//读取cookie
function getCookie(name)
{
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg)) return unescape(arr[2]);
else return "";
}