`
pcajax
  • 浏览: 2111607 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ASP.NET中的两个Cookie类:HttpCookie类与Cookie类

阅读更多

 

System.Web.HttpCookie类,对应集合类System.Web.HttpCookieCollection类

System.Net.Cookie类,对应集合类System.Net.CookieCollection类

区别:

System.Web.HttpCookie是服务器端通过http请求从客户端获取的Cookie(服务器端用)

System.Net.Cookie是表示客户端程序通过http响应接收到的Cookie(客户端程序用)

属性差别:

属性

System.Web.HttpCookie类

System.Net.Cookie类(客户端程序用)

构造函数

初始化 HttpCookie 类的新实例。

根据Netscape规范初始化 Cookie类的新实例。通常,应用程序无需构造Cookie 类,因为该类会基于通过HTTP响应接收的 Set-Cookie标头自动创建。

Comment

获取或设置服务器可添加到Cookie中的注释

CommentUri

获取或设置服务器可通过Cookie来提供的URI注释

Discard

获取或设置由服务器设置的丢弃标志

Domain

获取或设置将此Cookie与其关联的域

获取或设置Cookie对其有效的URI

Expired

获取或设置Cookie的过期状态(返回ture|false:过期|没过期)

Expires

获取或设置此Cookie的过期日期和时间(返回DateTime)

获取或设置Cookie的过期日期和时间(返回DateTime)(默认MinValue,会话Cookie)

HasKeys

Cookie是否具有子键(获取,true|false)

HttpOnly

指定Cookie是否可通过客户端脚本访问(获取或设置,true|false)

Item

获取HttpCookie.Values属性的快捷方式(为与老ASP版本兼容)

Name

获取或设置Cookie名

获取或设置Cookie名

Path

获取或设置要与当前Cookie一起传输的虚拟路径

获取或设置Cookie适用于的URI

Port

获取或设置Cookie适用于的TCP端口的列表

Secure

获取或设置一个值,该值指示是否使用安全套接字层SSL(即仅通过HTTPS)传输Cookie

获取或设置Cookie的安全级别

TimeStamp

获取Cookie作为DateTime发出的时间

Value

获取或设置单个Cookie的值

获取或设置Cookie值

Values

获取单个Cookie对象所包含的键值对的集合

Version

获取或设置Cookie的HTTP状态维护版本

目前有以下几种Cookie规范:

Netscape cookie草案:是最早的cookie规范,基于rfc2109。尽管这个规范与rc2109有较大的差别,但是很多服务器都与之兼容。

rfc2109, 是w3c发布的第一个官方cookie规范。这个规范太严格了,以致很多服务器不正确的实施了该规范或仍在使用Netscape规范。

rfc2965,规范定义了cookie版本2,并说明了cookie版本1的不足。

推算区别:

(1)System.Web.HttpCookie 类:最初设计考虑是WEB服务器用的,由于微软的WEB服务器并没有遵循rfc2109 \rfc2965 规范。而是采用的 Netscape cookie草案方案。

同时为了兼顾以前ASP的一些编码习惯,于是就有了这个类这样的设计。

如:遍历System.Web.HttpCookieCollection,会有如下的写法:

foreach (string name in Request.Cookies)

{

    info += string.Format("{0} = {1} \r\n ", name, Request.Cookies[name].Value);

}

而foreach(HttpCookie cookie in Request.Cookies)会出错

(2)System.Net.Cookie 类:最初设计考虑主要是客户端使用的,由于考虑到有些服务器的Cookie 是遵循rfc2109 \rfc2965规范,所以这个类的设计多了那些属性

分享到:
评论

相关推荐

    ASP.NET常见问题集锦.zip

    ASP.NET 中 Cookie 的基本知识.doc ASP.NET 页面对象模型.doc asp.net200问-专家门诊—ASP.NET开发答疑 ASP.NetWebPage深入探讨.txt ASP.NET中为DataGrid添加合计字段.doc ASP.NET中实现DataGrid数据排序.doc ...

    asp.net中httpcookie 的使用和简单计数器

    asp.net中httpcookie 的使用和简单计数器

    用ASP.NET加密Cookie数据

    Cookie确实在WEB应用方面为访问者和编程者都提供了方便,然而从安全方面考虑是有问题的,首先,Cookie数据包含在HTTP请求和响应的包头里透明地传递,也就是说聪明的人是能清清楚楚看到这些数据的  。其次,Cookie...

    asp.net Cookie值中文乱码问题解决方法

    我们以asp.net为例,代码如下: 设置Cookie时: 代码如下: HttpCookie cookie = new HttpCookie(“name”, System.Web.HttpContext.Current.Server.UrlEncode(“软件开发网”)); Response.Cookies.Add(cookie);读取...

    十天学会ASP.net--我认为ASP.NET比ASP难很多,希望大家做好准备

    在ASP.NET里面,数据库还是这两个但是常用的语言多了一个C#,也是微软推荐的语言,为.NET平台定制的语言。这样ASP.NET就有四种组合:VB+ACCESS,VB+SQL,C#+ACCESS,C#+SQL,本教程会使用C#+ACCESS,兼顾四种来写,...

    asp.net mvc 国际化 Cookie asp.net mvc 一键国际化

    本文以asp.net mvc3.0为例子,项目如图所示: 1. 首先建一个MVC国际化项目Internationalization。 2. 选中项目右键-->“添加”-->“添加ASP.NET文件夹”-->“App_GlobalResources”。 3. 选中“App_GlobalResources...

    ASP.NET LayUI权限管理系统源码

    1、前后端分离(没有session和cookie,只有token),方便微信,APP端等二次开发。每个角色可以控制在多个模块或者混合模块(如XX模块的新增,OO模块的更新) 2、预览地址:http://121.42.8.166:8888 二、功能特点 ...

    asp.net知识库

    ASP.NET: State Server Gems 完整的动态加载/卸载程序集的解决方案 从NUnit中理解.NET自定义属性的应用(转载) 如何在.NET中实现脚本引擎 (CodeDom篇) .NET的插件机制的简单实现 我对J2EE和.NET的一点理解 难分难舍...

    CookieManager:CookieManager是Cookie之上的ASP.NET Core抽象层

    Cookie上方的ASP.Net核心抽象层。 ASP.NET Core Wrapper读取和写入cookie。 建置状态 构建服务器 平台 地位 AppVeyor 视窗 特拉维斯 Linux / MacOS Azure管道 Windows / Linux / MacOS 给个星星! :star: 如果您...

    asp.net利用cookie保存用户密码实现自动登录的方法

    下面分析一下在asp.net中cookie的创建、提取与销毁的方法: 创建cookie 代码如下://向客户端写入Cookie HttpCookie hcUserName1 = new HttpCookie(“uname”); // 创建一个名为uname的cookie hcUserName1.Expires =...

    ASP.NET的网页代码模型及生命周期

    在ASP.NET的代码隐藏页模型中,一个完整的.aspx页面包含两个页面,分别是以.aspx和.cs文件为后缀的文件,这两个文件在形成了整个Web窗体。在编译的过程中都被编译成由项目生成的动态链接库(.DLL),同时,.aspx页面...

    ASP.NET中Cookie的用法实例分析

    本文实例讲述了ASP.NET中Cookie的用法。分享给大家供大家参考。具体分析如下: Cookie的用法也和ASP中差不多。比如我们建立一个名为aspcn,值为飞刀的cookie HttpCookie cookie = new HttpCookie[aspcn]; cookie....

    asp.net教学讲义

    1.2 Web 窗体与ASP.NET页面 8 1.2.1 简介 8 1.2.2 ASP.NET应用程序的创建方法 9 1.2.3 Web窗体的特点 10 1.2.4 Web 窗体的功能 10 1.2.5 WEB窗体工作原理 11 1.3 ASP.NET 页的结构 12 1.3.1 @Page指令 13 1.3.2 ASP...

    asp.net中使用cookie与md5加密实现记住密码功能的实现代码

    代码如下://设置,删除Cookie//provider jb51.net protected void set_cookie() { HttpCookie UserNameCookie = Request.Cookies[“UserNameCookie”]; HttpCookie UserPasswordCookie = Req

    asp.net技术内幕(1)

    第一部分 使用ASP.NET Web表单 <br>第1章 建立ASP.NET页面 <br>1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    ASP.NET常用代码

    ASP.NET常用代码 1. 打开新的窗口并传送参数: 传送参数: response.write("<script>window.open('*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"')</script>") 接收参数: string a = Request....

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。  ...

    ASP.NET4高级程序设计(第4版) 3/3

    此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。  ...

    asp.net关于Cookie跨域(域名)的问题

    跨二级域名 我们知道cookie是可以... 以asp.net为例 代码如下: 代码如下:HttpCookie cookie = new HttpCookie(“name”, “www.Admin10000.com”); cookie.Domain = “test1.com”; cookie.Path = “/”; Response.C

Global site tag (gtag.js) - Google Analytics