Cookie:
1.Cookie的特性:
-
Cookie是一小段文本信息,伴随着用户请求和页面在web服务器和浏览器之间传递。Cookie包含每次用户访问站点时web应用程序都可以读取的信息。
-
Cookie 存储在客户端浏览器内存或磁盘中;
-
Cookie是与网站相关联的,而不是与特定的网页相关联的,因此,无论用户请求站点中的哪一个页面,浏览器和服务器都将交换Cookie信息。用户访问不同的站点,各个站点都可能向用户的浏览器发送一个Cookie,浏览器会分别存储所有的Cookie。
-
Cookie会随着请求的网站一并发送到后台(如果请求百度的时候,那么就把百度的cookie放到请求报文里面去,然后发送给后台。)
public partial class Cookie : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
//如果是第一次请求页面
//往客户端浏览器写一个Cookie
Response.Cookies["Demo"].Value = DateTime.Now.ToString();
//设置cookie的过期时间是7天
Response.Cookies["Demo"].Expires = DateTime.Now.AddDays(7);
}
else
{
Response.Write(Response.Cookies["Demo"].Value);
}
}
}
2.Cookie的限制:
大多数浏览器只支持最大为4096字节的Cookie。且只允许每个站点存储20个Cookie。
浏览器在请求子域的页面的时候,会将主域的Cookie也一块发送到后台中去,但是子域的Cookie只能子域访问。
3.Cookie 的使用场景:
淘宝: 记录客户的浏览商品的信息,用来精准推送广告给客户。
Cookie适用于,帮助网站记住使用当前浏览器的用户的相关信息。
Session:
会话是滑动的一段时间。在持续的时间之内,Session可以保存一些用户的信息。
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
Session["key"] = DateTime.Now.ToString();
}
else
{
//后台从会话中读取数据
Response.Write(Session["key"]);
}
}
}