C#读取Javascript写的Cookie

枝柳飞扬 2010-09-25 11:45:35
我用Javascript写的Cookie,用Javascript可以读到,可是C#读不到Cookie,请问啥原因?

function setCookie(name, value, hours) {
var expire = "";
if (hours != null) {
expire = new Date((new Date()).getTime() + hours * 3600000);
expire = "; expires=" + expire.toGMTString();
}
document.cookie = escape(name) + "=" + escape(value) + expire;
}


C#读:
HttpCookieCollection cookies = Request.Cookies;
foreach (string c in cookies)
{
Response.Write(c);
}
...全文
157 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
aoin2006 2010-09-26
  • 打赏
  • 举报
回复
if(Response.Cookies["userName"] != null)
Response.Write(Response.Cookies["userName"].Value);

javascript写的时间和你在后台读取的时间可能冲突

我的意思是你在前台还没写进去 。 后台就开始读取了

你用2个页面测试一下 第一个用前台写 第二个用后台读


function setname() {
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
document.cookie = "userName=" + escape(Form1.txtUsername.value) + ";expires=" + exp.toGMTString() + ";path=/";
}


写的时候 加上 path=/
majic2008 2010-09-26
  • 打赏
  • 举报
回复
foreach (string c in cookies)
这句对吗
ayf_net 2010-09-26
  • 打赏
  • 举报
回复
观望……
chaochao6078 2010-09-26
  • 打赏
  • 举报
回复
兄台试下这个方式,把你的cooiename传进去就可以了


protected string getCookie(string cookiename)
{
string strcookievalue = "";
HttpCookie cookie = HttpContext.Current.Request.Cookies[cookiename];
if (cookie != null)
{
strcookievalue = cookie.Value;
}
return strcookievalue ;
}



枝柳飞扬 2010-09-25
  • 打赏
  • 举报
回复
@wuyq11
我那样写也可以执行,就是看cookies里有没有的,
用Request.Cookies[cookieName] 获得的为 NULL 。
wuyq11 2010-09-25
  • 打赏
  • 举报
回复
foreach (string cookieName in Request.Cookies.AllKeys)
{
HttpCookie cookie = Request.Cookies[cookieName];
}

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧