HOME
BBS
深山帮帮欢迎您,您可以注册或者
qq登录只需一步,快速开始
深山旅行社网站管理系统开发完成,欢迎各位网友测试! 点这里测试
565449214 给站长留言
订阅本栏目 RSS您所在的位置: 深山工作室 > asp.net学习 > 正文

ASP.NET中Cookie编程的基础知识

中国IT实验室 2008-4-26 22:54:58 深山行者 字体:  浏览 14929 我要评论

简介

Cookie 为 Web 应用程序保存用户相关信息提供了一种有用的方法。例如,当用户访问您的站点时,您可以利用 Cookie 保存用户首选项或其他信息,这样,当用户下次再访问您的站点时,应用程序就可以检索以前保存的信息。

什么是 Cookie?

Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。用户每次访问站点时,Web 应用程序都可以读取 Cookie 包含的信息。

假设在用户请求访问您的网站 www.contoso.com 上的某个页面时,您的应用程序发送给该用户的不仅仅是一个页面,还有一个包含日期和时间的 Cookie.用户的浏览器在获得页面的同时还得到了这个 Cookie,并且将它保存在用户硬盘上的某个文件夹中。

以后,如果该用户再次访问您站点上的页面,当该用户输入 URL www.contoso.com 时,浏览器就会在本地硬盘上查找与该 URL 相关联的 Cookie.如果该 Cookie 存在,浏览器就将它与页面请求一起发送到您的站点,您的应用程序就能确定该用户上一次访问站点的日期和时间。您可以根据这些信息向用户发送一条消息,也可以检查过期时间或执行其他有用的功能。

Cookie 是与 Web 站点而不是与具体页面关联的,所以无论用户请求浏览站点中的哪个页面,浏览器和服务器都将交换 www.contoso.com 的 Cookie 信息。用户访问其他站点时,每个站点都可能会向用户浏览器发送一个 Cookie,而浏览器会将所有这些Cookie 分别保存。

以上就是 Cookie 的基本工作原理。那么,Cookie 有哪些用途呢?最根本的用途是 Cookie 能够帮助 Web 站点保存有关访问者的信息。更概括地说,Cookie 是一种保持 Web 应用程序连续性(即执行“状态管理”)的方法。浏览器和 Web 服务器除了在短暂的实际信息交换阶段以外总是断开的,而用户向 Web 服务器发送的每个请求都是单独处理的,与其他所有请求无关。然而在大多数情况下,都有必要让 Web 服务器在您请求某个页面时对您进行识别。例如,购物站点上的 Web 服务器跟踪每个购物者,以便站点能够管理购物车和其他的用户相关信息。因此 Cookie 的作用就类似于名片,它提供了相关的标识信息,可以帮助应用程序确定如何继续执行。

使用 Cookie 能够达到多种目的,所有这些目的都是为了使 Web 站点记住您。例如,一个实施民意测验的站点可以简单地利用 Cookie 作为布尔值,表示您的浏览器是否已经参与了投票,从而避免您重复投票; 而那些要求用户登录的站点则可以通过Cookie 来确定您是否已经登录过,这样您就不必每次都输入凭据。

有关 Cookie 的更多背景信息,建议您阅读 Verizon Web 站点中的“How Internet Cookies Work”一文,地址为http://www22.verizon.com/about/community/learningcenter/articles/displayartic le1/0,4065,1022z1,00.html(英文)。其作者详细解释了什么是 Cookie 以及Cookie 是如何在浏览器和服务器之间交换信息的,他还全面总结了 Cookie 涉及的隐私问题。

顺便问一下,您是否想知道它们为什么被称作“Cookie”?Jargon File(又称为“The New Hacker's Dictionary”)版本 4.3.3 对这一术语的词源给出了准确的定义和合理的解释。您可以在 http://www.catb.org/~esr/jargon/jargon.html#cookie(英文)找到相关的条目。

在此后的内容中,本文将假设您已经知道什么是 Cookie,并且假设您已经清楚为什么要在 ASP.NET 应用程序中使用 Cookie.

Cookie 的限制

在开始讨论 Cookie 的技术细节之前,我想先介绍一下 Cookie 应用的几条限制。大多数浏览器支持最多可达 4096 字节的 Cookie,如果要将为数不多的几个值保存到用户计算机上,这一空间已经足够大,但您不能用一个 Cookie 来保存数据集或其他大量数据。在实际应用中,您可能并不希望在 Cookie 中保存大量的用户信息,而只希望保存用户编号或其他标识符。之后,当用户再次访问您的站点时,您就可以使用该用户ID 在数据库中查找用户的详细信息。(有关保存用户信息的说明,请参阅 Cookie 和安全性。)

浏览器还限制了您的站点可以在用户计算机上保存的 Cookie 数。大多数浏览器只允许每个站点保存 20 个 Cookie.如果试图保存更多的 Cookie,则最先保存的Cookie 就会被删除。还有些浏览器会对来自所有站点的 Cookie 总数作出限制,这个限制通常为 300 个。

您最可能遇到的 Cookie 限制是:用户可以设置自己的浏览器,拒绝接受Cookie.您很难解决这个问题,除非完全不使用 Cookie 而是通过其他机制来保存用户相关信息。保存用户信息的一种常用方法是会话状态,但会话状态又依赖于 Cookie.这一点在后面的 Cookie 和会话状态中阐述。

后一页:没有了
Ads loading...
相关阅读
( 2008-4-26 22:54:58 )ASP.NET中Cookie编程的基础知识
( 2008-4-17 20:13:03 )ASP.NET 2.0跨网页提交的三法
( 2008-4-5 20:32:12 )ASP.NET 2和IIS 7.0发生不兼容变化
( 2008-4-5 20:29:51 )浅谈 Vista系统设置IIS7攻略
( 2008-4-2 23:12:01 )ASP.NET中文乱码问题的解决。
( 2008-1-30 21:23:24 )ASP.Net 2.0中的5个数据控件
( 2008-1-7 20:36:45 )ASP.NET AJAX的应用
( 2007-12-1 21:54:50 )Asp.net中防止用户多次登录的方法
共有0条关于《ASP.NET中Cookie编程的基础知识》的评论
发表评论
正在加载评论……
返回顶部发表评论
呢 称:
表 情:
内 容:
评论内容:不能超过 400 字,需审核,请自觉遵守互联网相关政策法规。
验证码: 验证码 
深山工作室网友评论声明,请自觉遵守互联网相关政策法规。

您发布的评论即表示同意遵守以下条款:
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家、社会、集体和公民的合法权益;
二、不得发布国家法律、法规明令禁止的内容;互相尊重,对自己在本站的言论和行为负责;
三、本站对您所发布内容拥有处置权。

Ads loading...
更多信息>>栏目类别选择
rss学习
个人空间
网站设计
网站公告
下载
photoshop学习
ASP学习
DIV+CSS学习
SEO搜索引擎忧化
java学习
HTML学习
网站信息
网站类信息
更多>>同类信息
ASP.NET中Cookie编程的基础知识
ASP.NET 2.0跨网页提交的三法
ASP.NET 2和IIS 7.0发生不兼容变化
ASP.NET中文乱码问题的解决。
ASP.Net 2.0中的5个数据控件
根据页面模板动态生成html页面
ASP.NET AJAX的应用
Asp.net中防止用户多次登录的方法
Ads loading...
更多>>最新添加文章
ASP连接各种数据库的方法
asp获得系统Unix时间戳与将Unix时间戳转为正常日期
关于SQL2008 “不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了‘阻止保存要求重新创建表的更改’” 解决方案
access数据库做的网站出现.ldb不能删除超过2KB之后就会网站访问不了数据库,提示数据库不存在
asp中最难发现的错误由最简单的程序引起
Asp得到当月天数的函数方法
在服务器上新建网站,在服务器用域名能访问,但是外网访问不了的解决办法
深山旅行社网站管理系统5.0发布
  • 业务 QQ:565449214
  • 手机:139 6134 7334
更多>>随机抽取信息
innerHTML支持firefox火狐
ASP事务处理 for access
用javscript实现为表格的每一行自动加上序号
如何加快网站访问速度
自适应高度textarea(文本框)
正则表达式全部符号解释
网站页面设计中的Css十大注意
利用CSS里面的A:hover鼠标滑过缩略图时放大图片
Ads loading...