近日写程序发现System.Net下也有一个Cookie类,顺便整理下2个cookie的区别:
1.System.Net.Cookie
表示客户端使用的Cookie ,可由客户端应用程序检索通过Http接收的Cookie。
遵循Cookie规范:原始 Netscape 规范、RFC 2109 和 RFC 2965。(很重要的区别)
2.System.Web.Cookie
表示 服务器端使用的Cookie ,属性没有System.Net.Cookie多
遵循Cookie规范:采用的Netscape cookie草案方案。
我们一般来理解他们的区别就是下面简单的一句:
System.Web命名空间下的是给服务器段用的,System.Net是给客户端程序用的。
实际上不止这点区别:
下面我们来对比这两个Cookie类的属性如下,这些属性都是Copy自MSDN中文版的说明文档:
System.Web.HttpCookie 类 | System.Net.Cookie 类 |
MSDN中对构造函数的描述: 已重载。 初始化 HttpCookie 类的新实例。 |
MSDN中对构造函数的描述: 已重载。 根据 Netscape 规范初始化 Cookie 类的新实例。通常,应用程序无需构造 Cookie 类,因为该类会基于通过 HTTP 响应接收的 Set-Cookie 标头自动创建。 |
Comment 获取或设置服务器可添加到 Cookie 中的注释。 |
|
CommentUri 获取或设置服务器可通过 Cookie 来提供的 URI 注释。 |
|
Discard 获取或设置由服务器设置的丢弃标志。 |
|
Domain |
Domain |
Expired 获取或设置 Cookie 的当前状态。 |
|
Expires |
Expires |
HttpOnly |
|
Name |
Name |
Path |
Path |
Port |
|
Secure |
Secure |
TimeStamp |
|
Value |
Value |
Values |
|
Version |