书上有段代码是这样的:
if (FormsAuthentication.Authenticate (UserName.Text,
Password.Text))
FormsAuthentication.RedirectFromLoginPage (UserName.Text,
true);
else
Output.Text = "Invalid login";
它就是验证用户的,不正确就转到登陆界面,而FormsAuthentication.RedirectFromLoginPage (UserName.Text,true)这个方法第二个参数设置为true,就可以自动写入一个永久cookies.
可是我一旦关闭浏览器cookies就消失了,怎么解决呢?还有当我在登陆窗口输入用户名后,切换到密码框时,自动出现了密码,怎么不让它自动出现?
if (FormsAuthentication.Authenticate (UserName.Text,
Password.Text))
FormsAuthentication.RedirectFromLoginPage (UserName.Text,
true);
else
Output.Text = "Invalid login";
它就是验证用户的,不正确就转到登陆界面,而FormsAuthentication.RedirectFromLoginPage (UserName.Text,true)这个方法第二个参数设置为true,就可以自动写入一个永久cookies.
可是我一旦关闭浏览器cookies就消失了,怎么解决呢?还有当我在登陆窗口输入用户名后,切换到密码框时,自动出现了密码,怎么不让它自动出现?
解决方案 »
- 哪位用过.NET2.O中的WIZARD控件,指点一下??
- 华信与利达智通都给OFFERE了,怎么办呢?
- 如何从一个DataTable中Select出几个行然后快速的保存一个DataTable?
- ★★★TreeView节点的定位问题,开发过带框架页面的高手进来看看!!★★★
- 为何导致其他的input type="file"不能正常使用?
- 关于如何在Cookie中存储HTML标记的问题
- 关于FTP的问题,请各位指点!!
- 数据绑定时,不支持APS.net AJAX技术吗?
- 请问asp.net mvc2中ajax怎么给控制器传递参数
- 关于ASP.NET连接Access的问题!
- 求一组RadioButton操作的代码?
- DataGrid能不能做到:在它显示时,当发现某行的某列的值为空的话,就改变这一行的背景色片,如果不为空就正常显示?
cookie是存在客户端的,不同于session。就算你关闭了这个窗口cookie还是存在的,除非你把cookie清空了。
还有当我在登陆窗口输入用户名后,切换到密码框时,自动出现了密码。
这是你IE设置的问题,跟程序无关的。
第一个问题:永久cookies是不存在的。
第二个问题:是浏览器的自动完成功能吧。
可以在你浏览器的配置选项里重置成默认设置应该就可以了。
FormsAuthenticationTicket tk = new FormsAuthenticationTicket(
1,
name,
DateTime.Now,
DateTime.Now.AddMinutes(30), //设置到期时间
false,
roles
);
hcUserID.Expires=System.DateTime.Now.AddMinutes(60.0d);
Response.Cookies.Add(hcUserID);
//用以上的方法设置一下时间看看
我已测试通过,没有问题的。所谓永久 cookie 是指它的过期日期特别长,比如 2099 年。
使用此功能有个前提,IE 允许 cookie ,且不能自动清空 cookie
第二个问题:
同样也是 IE 的设置。在第一次访问网站并输入密码进行提交时,会提示你是否保存密码。
你可以通过以下二种方式清除:
a、双击用户名输入框,当出现下拉的提示时,找到你想要删除的帐号
注意不要点击它,将鼠标放在上面即可,然后按键盘上的“Del”
b、IE 工具 →Internet 选项 → 内容 → 自动完成 → 清除密码