关于Cookie的问题,高分求解
我用JS写了一段读写Cookie的代码,放在单独的HTML中执行没有问题,在Cookie目录中生成了相关数据但是放在VS的项目中执行,就不能生成文件。
请各位帮忙解决下,我个人觉得可能说WEB.CONFIG文件中配置的问题,但GOOGLE了一下,也没找到相应的答案。
谢谢! --------------------编程问答-------------------- 我以前写过一个 是可以生成的呀
你把你的代码要贴上来呀 --------------------编程问答--------------------
HttpCookie LoginCookie = new HttpCookie("keuserlogin");
DateTime dt = DateTime.Now;
TimeSpan ts = new TimeSpan(20, 0, 0, 0);
LoginCookie.Expires = dt.Add(ts);
LoginCookie.Values.Add("UserId", Convert.ToString(UserId));
LoginCookie.Values.Add("UserName", UserName);
Response.AppendCookie(LoginCookie);
--------------------编程问答-------------------- 不会帮顶 --------------------编程问答-------------------- To:webhaitao
在主贴中已经说明说JS写的了,不必再贴C# CODE了
To:wen01071081
代码没有问题,如果有问题的话,放在单独的HTML文件中执行也不可能成功 --------------------编程问答-------------------- 最好是把js代码贴出来
要不你就自己开调试看看js什么地方错了
还有种可能是你的文件编码的原因,这种错误多出在js文件的引用上
--------------------编程问答-------------------- 你的JS是不是独立文件,如果是你看下你的JS编码和VS里的编码是不是一致。 --------------------编程问答-------------------- 学习一下 --------------------编程问答-------------------- To:Soloboy1020, slimboy123
编码没有问题,从JS文件中提取出来放在页面上也是同样问题.
附一个脚本程序吧,期待高人出现
function setCookie(c_name,value,expiredays)
{
alert('sdfsdf');
var exdate = new Date();
exdate.setDate(exdate.getDate() + expiredays);
alert('sdfsdf');
document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : "; expires="+exdate.toGMTString());
alert(document.cookie);
}
function getCookie(c_name)
{
if (document.cookie.length > 0)
{
c_start=document.cookie.indexOf(c_name + "=")
if (c_start != -1)
{
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";" , c_start);
if (c_end == -1) c_end = document.cookie.length;
return unescape(document.cookie.substring(c_start,c_end))
}
}
return ""
}
var advCookie = getCookie('adv');
if(advCookie == null)
{
SetCookie('adv', 1, 100);
}
else
{
alert(advCookie);
} --------------------编程问答-------------------- 你自己写的有问题吧
getCookie方法,在没有找到健的时候,返回的是"",不是null.
另外,setCookie方法是小写的.
var advCookie = getCookie('adv');--------------------编程问答-------------------- 应该是domain的问题
if(advCookie == '')
{
setCookie('adv', 1, 100);
advCookie = getCookie('adv');
}
alert(advCookie);
如果你是某个网站下的js那么只能读该域下的cookie
--------------------编程问答-------------------- cook有大小限制 --------------------编程问答-------------------- 9楼的正解,自己写的有问题
getCookie你返回的是""却与NULL比较
还有IF语句里面的SetCookie "S" 大写了,函数是小写的 --------------------编程问答-------------------- 请不要在源码上找问题了,贴出来的确实有9楼说的问题。
不过这并不防碍我在单独的HTML文件里写入COOKIE。
我又重新建立了一个项目,用缺省生成的WEB.CONFIG是可以写入COOKIE的。
现在更加确认是WEB.CONFIG里面的配置的问题了,请有相关经验的大大帮个忙,谢谢
补充:.NET技术 , ASP.NET