
test1.aspx有这个
protected voID Page_Load(object sender,EventArgs e){ httpcookie cookie = new httpcookie("test","test"); cookie.Expires = DateTime.Now.AddDays(1); Response.setcookie(cookie);} test2.aspx有这个
protected voID Page_Load(object sender,EventArgs e){ Response.Write(Response.cookies["test"].Value);} 无论我尝试了多少次,cookie的值都是null.我试图打开page1然后第2页,期望一个cookie工作,但它不起作用,我不知道为什么.
解决方法 我认为您需要读取请求而不是响应.作为MSDN的建议
protected voID Page_Load(object sender,EventArgs e) { Response.Write(Request.cookies["test"].Value);} 在Web应用程序中,请求来自客户端(浏览器),响应从服务器发送.从浏览器验证cookie或cookie数据时,您应该使用Request.cookies集合.在构建要发送到浏览器的cookie时,需要将它们添加到Response.cookies集合中.
关于使用setcookie的其他想法
有趣的是你在第一页上使用的HttpResponse.SetCookie; MSDN表示此方法不适用于您的代码.
This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.
即使在此页面上找到的示例代码使用Response.cookies.Add(Mycookie)方法,也不会调用setcookie
总结以上是内存溢出为你收集整理的Cookie在asp.net中不起作用全部内容,希望文章能够帮你解决Cookie在asp.net中不起作用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)