cookie在vs重新run的时候丢失

今天写个关于http cookie的demo,发现只要vs重新运行后cookie的值就会丢失,代码如下

protected void Page_Load(object sender, EventArgs e)
        {
            HttpCookie _userInfoCookies = Request.Cookies["UserName"];
            string city;
            if (_userInfoCookies != null)
            {
                city = _userInfoCookies["City"];
                Session["location"] = city;
                Response.Redirect("Berava.aspx");
            }
        }
        protected void Moveto_Click(object sender, EventArgs e)
        {
            Session["location"] = worlddrdolist.SelectedItem.Value;
            if (CheckBox1.Checked)
            {
                HttpCookie _userInfoCookies = new HttpCookie("UserName");
                _userInfoCookies["City"] = worlddrdolist.SelectedValue.ToString();

                Response.Cookies.Add(_userInfoCookies);
            }
            Response.Redirect("Berava.aspx");
        }

最后才发现是因为没有设置cookie的过期时间导致(Expire),默认cookie只是在当前会话有效,所以vs重新运行的时候就是一个新的会话,这时cookie就已经失效了,只要将cookie设置一个过期时间就ok了,像下面这样(有效时间为一天):

_userInfoCookies.Expires = DateTime.Now.AddDays(1);

cookie在vs重新run的时候丢失

时间: 2024-10-12 23:09:30

cookie在vs重新run的时候丢失的相关文章

关于缓存中Cookie,Session,Cache的使用

文章来源:http://canann.iteye.com/blog/1941173 以前实现数据的缓存有很多种方法,有客户端的Cookie,有服务器端的Session和Application. 其中Cookie是保存在客户端的一组数据,主要用来保存用户名等个人信息. Session则保存对话信息.Application则是保存在整个应用程序范围内的信息,相当于全局变量. Session Session用来保存每一个用户的专有信息 Session的生存期是用户持续请求时间加上一段时间(一般是20分

基于javaWeb阶段下的Cookie和Session总结

1. 会话技术   就是用户在使用浏览器浏览界面的时候,去访问多个页面后一次性关闭浏览器,这个过程叫会话,学习会话技术就是在客户端与服务器进行交互的时候为了能更好的保存数据.在java中会话技术只有Cookie和Session2. Cookie技术   Cookie是客户端技术,程序把每个用户的数据以cookie的形式保存到各自浏览器中.当用户使用浏览器再次访问服务器中的web资源的时候,就会带着各自的数据过去.这样,web资源处理的就是用户各自的数据了.3. Cookie的分类   Cooki

Java—工厂模式

工厂模式: public interface Cookie { public abstract void run (); } public abstract class CookieFactory { abstract Cookie create(); } public class BearCookie implements Cookie{ public void run (){ System.out.println("正在制作小熊饼干"); } } public class Numb

浏览网页错误类型大全

浏览网页错误类型大全 400 无法解析此请求. 401.1 未经授权:访问由于凭据无效被拒绝. 401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法而被拒绝. 401.3 未经授权:访问由于 ACL 对所请求资源的设置被拒绝. 401.4 未经授权:Web 服务器上安装的筛选器授权失败. 401.5 未经授权:ISAPI/CGI 应用程序授权失败. 401.7 未经授权:由于 Web 服务器上的 URL 授权策略而拒绝访问. 403 禁止访问:访问被拒绝. 403.1 禁止访问:执

java攻城师之路--复习java web之Cookie_Session

Servlet技术 用来动态生成 网页数据资源Servlet生成HTML 页面数据时,所有内容都是通过 response.getWriter response.getOutputStream 向浏览器输出的 1 <html> 2 <head> 3 </head> 4 <body> 5 Hello 6 </body> 7 </html> 用Servlet 输出流打印网页信息response.getWriter().print("

HttpSession

模拟购物车页面页面 package cn.soldier.session; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServ

gdb调试器之&quot;测不准原则&quot;

一.测不准原则我大学物理学的不太好,特别是高等物理,这个概念是在很多科普性的读物中都可以见到,就像”罗素悖论“.哥德尔的”不完备理论“.爱因斯坦的”相对论“等,大家都是一知半解,然后根据这个概念大家自由发挥,所以就有千奇百怪的场景和理解了,最后以讹传讹,倒也不清楚这个东西原始真正意义,这种现象在很多成语中也经常出现,例如经典的.也是考试的时候出镜率很高的”差强人意“.作为无数民间科学家中的一员,我对这个”测不准“的理解就是当你真正观察它的时候,它和它正常的行为是不同的.这一点可能在很多其他场合也

HTTP网页异常错误代码详解

在调试TomCat,等web服务器的时候我们有时候各种错误代码铺面而来,让人头疼不已,那么这些代码究竟都代表什么呢?知道这些代码会会对我们的调试帮助很大 让我们来看一下这些代码究竟什么意思 400 无法解析此请求. 401.1 未经授权:访问由于凭据无效被拒绝. 401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法而被拒绝. 401.3 未经授权:访问由于 ACL 对所请求资源的设置被拒绝. 401.4 未经授权:Web 服务器上安装的筛选器授权失败. 401.5 未经授权:ISA

小白开学Asp.Net Core 《十》

小白开学Asp.Net Core <十> — — Session.Cookie.Cache(老生常谈) 一.背景 在常谈Session和Cookie之前我们先来简单的了解下Http(可以说这是必须的,默认大家都了解) 总结一句话:HTTP是一种无状态的协议,在不采取特殊手段的情况下,HTTP请求是不保留用户值或应用状态的信息. Session跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Se