一,新建一个空网站,添加一个Default.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Label ID="Label1" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>

二,进入Default.aspx.cs添加一下代码

protected void Page_Load(object sender, EventArgs e)
    {
        StringBuilder sb = new StringBuilder();
        // 从当前请求得到cookie
        HttpCookie cookie = Request.Cookies.Get("Cookie");

// 检查cookie是否存在
        if (cookie == null)
        {
            sb.Append("没有在客户端接收到Cookie ");
            sb.Append("添加可以放回的cookie值 <br/>");
            // 创建cookie
            cookie = new HttpCookie("Cookie");
            // 将cookie的值设置为当前时间
            cookie.Value = DateTime.Now.ToString();
            // 设置10分钟内到期的cookie.
            cookie.Expires = DateTime.Now.AddMinutes(10d);
            // 插入cookie在当前的HTTP响应
            Response.Cookies.Add(cookie);
        }
        else
        {
            sb.Append("接收到客户端的Cookie <br/>");
            sb.Append("Cookie 名字: " + cookie.Name + "<br/>");
            sb.Append("Cookie 值: " + cookie.Value + "<br/>");
            sb.Append("Cookie 到期时间: " +
            cookie.Expires.ToString() + "<br/>");
        }
        Label1.Text = sb.ToString();
    }

三,右键浏览,注意由于第一次浏览器是没有生成cookie,则需要刷新一遍才可以看到效果

四,cookie数据存放在客户的浏览器.

cookie设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie仍然有效直到超过设定的过期时间。存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。

五,session机制是一种服务器端的机制.session数据放在服务器

1,当程序需要为某个客户端的请求创建一个session时,服务器首先检查这个客户端的请求里是否已包含了一个session标识(称为session id),如果已包含则说明以前已经为此客户端创建过session,服务器就按照session id把这个session检索出来使用(检索不到,会新建一个),如果客户端请求不包含session id,则为此客户端创建一个session并且生成一个与此session相关联的session id,session id的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个session id将被在本次响应中返回给客户端保存。

2,保存这个session id的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发送给服务器。然而,也是这个原因造成当关闭浏览器的时候,session id丢失了,再次连接服务器时也就无法找到原来的session.所以就有“只要关闭浏览器,session就消失了”的错觉.

3,但在真实的服务器中,除非程序通知服务器删除一个session,否则服务器会一直保留.

Cookie的简单使用的更多相关文章

  1. cookie的简单留言框

    我们在网页浏览时退出后,再次进入时会有上次的记录,这就用的上cookie属性了,cookie就是服务器暂存放在你计算机上的一笔资料,好让服务器用来辨认你的计算机.当你在浏览网站的时候,Web服务器会先 ...

  2. Java服务端对Cookie的简单操作

    Java服务端对Cookie的简单操作 时间 2016-04-07 10:39:44 极客头条 原文  http://www.cuiyongzhi.com/index.php/post/15.html ...

  3. 万年不变话题cookie,简单总结

    cookie是面试中经常会问到的一个问题,但是就我的项目实践来看,我用到的次数极少.有时候用到也不是为了存储用户名密码,只是存储一些需要记住的状态.可能和我的经验尚浅,涉足的项目不算多有关.这里简单做 ...

  4. 什么是Cookie。Cookie的原理介绍,Cookie的简单应用

    1 介绍:Cookies亦称Cookie .Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术.Cookies是当你浏览某网站时,由Web服务 ...

  5. 对Django框架中Cookie的简单理解

    概念的理解:首先Cookie和Session一样,是django中用于视图保持状态的方案之一.为什么要进行视图保留呢,这是因为浏览器在向服务器发出请求时,服务器不会像人一样,有记忆,服务器像鱼一样,在 ...

  6. 易懂 易上手的cookie 最简单明了 js中cookie的使用方法及教程

    今天项目中需要用到cookie 看到我的cookie不行了 大喊一声我曹 怎么可以这样 我就疯狂的在网上找 找啊 找 但是我感觉都太官方了   废话不说 看栗子 1.引入jQuery与jQuery.C ...

  7. cookie操作简单实现

    var Cookie = { get:function(key){ var reg = new RegExp('(?:^| )' + key + '=([^;]+)(?=;|$)','gi'); re ...

  8. java web(七)Cookie的简单使用

    一.概述 测试 //1.创建一个Cookie对象    //Cookie cookie1=new Cookie("name","xrk");    //2.调用 ...

  9. js : json和 cookie 的简单操作

    使用 cookie,可以记录用户的最近的浏览历史 <!DOCTYPE HTML> <html lang="zh-cn"> <head> < ...

  10. session和cookie的简单理解

    0. 引子,我们为什么要cookie和session       因为http请求是无状态的(不能记录用户的登录状态等),所以需要某种机制来保存用户的登录状态等信息,在下次访问web服务的时候,不用再 ...

随机推荐

  1. smoke.js是一款基于HTML5 Canvas的逼真烟雾特效js插件。通过该js插件,可以非常轻松的在页面中制作出各种烟雾效果。

    Smoke.js 是一个浏览器默认警告系统的JavaScript替代品,如果你想要跨浏览器与平台的标准化JavaScript警告窗口,Smoke.js就是你想要的. Smoke.js是一个轻量级且灵活 ...

  2. 使用vim配置方案spf13中碰到的一些问题

    目的:达到我自己自定义安装插件的目的 安装YCM(YouCompleteMe)自动补全神器之前的准备 先安装编译环境: 1 2 sudo apt-get install build-essential ...

  3. Secondary Namenode - What it really do?

    原文链接:http://blog.madhukaraphatak.com/secondary-namenode---what-it-really-do/ Secondary Namenode is o ...

  4. python中的编码声明

    python中的第一行,目的就是指出,你想要你的这个文件中的代码用什么可执行程序去运行它,就这么简单 #!/usr/bin/python 相当于写死了 python 路径(是告诉OS执行这个py时,调 ...

  5. django 学习笔记(一)搭建基础环境

    1.安装django 下载地址 https://github.com/django/django 解压后进入文件夹运行指令 >> python setup.py install 2.创建工 ...

  6. document对象相关的几个常用的方法

    方法  描述 var newP=createElement("p"); 创建了一个p标签,p也可替换为div,span等 var oldTxt=createTextNode(&qu ...

  7. win32下Socket编程(转载)

    在网上找了很多的资料,现将这些资料整合起来,详细介绍一下VC下的socket编程,并提供一个服务器客户端具体的实例.希望对您有所帮助 一.原理部分 (个人觉得这篇写的可以,所以转与此,原文地址:htt ...

  8. Recursive - leetcode [递归]

    经验tips: Recursion is the best friend of tree-related problems. 一是只要遇到字符串的子序列或配准问题首先考虑动态规划DP,二是只要遇到需要 ...

  9. how to make a git repo un-git?

    If you have a git repo and now you want to make it a plain filesystem tree .. (removing the git trac ...

  10. Java基础第二章