.net 刷新页面cookie丢失
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.net 刷新页面cookie丢失相关的知识,希望对你有一定的参考价值。
创建完cookie,当前页取值为空,需要跳转后才会创建cookie成功,怎么可以实现不需要跳转就可以创建成功
设置一下cookie的过期时间追问刚创建执行完,刷新页面就丢失,应该不是过期时间的问题
追答这种还真没遇过,如果你在服务器中改的话,有一种可能就是Cs文件改动太频繁,导致cookie失效
要不就是cookie哪里写得有点小失误
if (System.Web.HttpContext.Current.Request.Cookies["strId"] != null)
Response.Cookies["strId"].Value = dt.Rows[0]["user_id"].ToString();
//过期时间设置为1天
Response.Cookies["strId"].Expires = DateTime.Now.AddDays(1);
HttpCookie Cookies = new HttpCookie("UserDomain");
Cookies.Expires = DateTime.Now.AddHours(-1); HttpContext.Current.Response.AppendCookie(Cookies);
Cookies = new HttpCookie("UserDomain");
Cookies.Values["UserDomainName"] = HttpContext.Current.Server.UrlEncode("admin");
HttpContext.Current.Response.AppendCookie(Cookies); 创建后不能获取到
写得好复杂。就直接赋值
获取不到那就是赋值没成功
Response.Cookies["strId"].Value =***
Response.Cookies["strId"].Expires = DateTime.Now.AddHours(-1);
获取cookie值
string cookieId = Server.htmlEncode(Request.Cookies["strId"].Value);
我知道问题了,创建完cookie,要跳转或者刷新页面cookie才算是创建成功!
参考技术A 你有木有创建成功?浏览器是不是禁用了cookie啊。追问程序中另一个cookie 没问题!
参考技术B 获取不到就重新获取。本地存储和cookie
localStorage 和 cookie一样,数据存储在浏览器客户端,不会随刷新页面,关闭页签,打开新网站,乃至关闭浏览器而改变;
sessionStorage会在关闭页签,关闭浏览器时失去数据,刷新浏览器,前进后退时不会丢失数据,并且sessionStorage的数据每个窗口是独立的,不会多窗口共享数据;
cookie会每次发送http请求时被发送到服务器,localStorage和sessionSotrage没有这样多余的操作;
cookie的存储限制在4k之内,localStorage和sessionStorage有更大的存储空间;
localStorage和sessionStorage存储数据的方法:
setItem(key, value) getItem(key) removeItem(key) clear()
以上是关于.net 刷新页面cookie丢失的主要内容,如果未能解决你的问题,请参考以下文章
.net 刷新了第二次页面后就获取不到cookies了,这是啥回事?
vue单页面应用刷新网页后vuex的state数据丢失的解决方案