Cookie读取不到数据

虚幻的守护者 2011-08-09 08:18:08
我在登录成功后创建Cookie,保存用户的信息,在用户下次访问时读取数据!但是我的没有读取到。
在用户登录成功后创建Cookie
//创建cookie对象
HttpCookie cookie = new HttpCookie("loginstates");
//定义时间对象
DateTime dt = DateTime.Now;
//定义cookie的有效日期

//添加作用时间
cookie.Expires = DateTime.Now.AddDays(14);
//向cookie中添加信息
cookie.Values.Add("username",name);
cookie.Values.Add("password",pwd);
//把cookie写入到客户端cookie集合中
Response.AppendCookie(cookie);
在用户下次访问时 读取Cookie数据。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//判断客户端是否支持cookie
if (Request.Browser.Cookies)
{
//判断客户端cookie是否有信息
if (Request.Cookies["loginstates"] != null)
{
Txt_ReaderName.Text = Request.Cookies["loginstates"].Values["username"].ToString();
Txt_PassWord.Text = Request.Cookies["loginstates"].Values["password"].ToString();
}
}
}
}
但是在判断客户端Cookie是否有数据时, 得到的结果是没有。
...全文
331 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
虚幻的守护者 2011-08-15
  • 打赏
  • 举报
回复
不好意思前段时间有点事,回复一下,我是在 VS上做的,在判断的时候为空进不去。问题有点纠结!!
kingdom_0 2011-08-09
  • 打赏
  • 举报
回复
断点看下,这样看不出问题。
vvvvkk 2011-08-09
  • 打赏
  • 举报
回复
来学习下
鸭梨山大帝 2011-08-09
  • 打赏
  • 举报
回复
你是在ASPNET DEV调试环境下,还是IIS 环境下调试的?
小阳 2011-08-09
  • 打赏
  • 举报
回复
protected void btnLogin_Click(object sender, EventArgs e)
{
if (Login(this.txtName.Text.Trim().ToString(), this.txtPass.Text.Trim().ToString()))
{
HttpCookie cookie = new HttpCookie("user");
cookie.Values.Add("username", this.txtName.Text);
if (this.ckLogin.Checked)
{
DateTime dat = DateTime.Now;//定义时间对象
TimeSpan ts = new TimeSpan(30, 0, 0, 0);

cookie.Expires = dat.Add(ts);//添加作用时间
}
Response.AppendCookie(cookie);
Thread.Sleep(2000);
Response.Redirect("~/default.aspx");
}
else
{
this.lblError.Text = "用户名或密码有误,请重新输入!";
}
}



调用的时候

HttpCookie cookie = Request.Cookies["user"];
if (cookie == null)
{
Response.Redirect("~/Login.aspx");
}
else
{
string name = cookie.Values["username"];
this.lblName.Text = name;
}
小阳 2011-08-09
  • 打赏
  • 举报
回复
看了下代码,真没啥问题哎!
  • 打赏
  • 举报
回复
Request.Cookies["loginstates"]!=null进去了吗?
Request.Cookies["loginstates"]["username"].Value.ToString()
Request.Cookies["loginstates"].Values.Get("User");
孟子E章 2011-08-09
  • 打赏
  • 举报
回复
经测试,代码是没有问题的。

110,549

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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