C# HTTP系列2 HttpWebReponse类
System.Net.HttpWebReponse 类提供 WebResponse 类的特定于HTTP的实现。
例子
下面的示例返回一个从HttpWebRequest 对象返回的 HttpWebResponse对象。
HttpWebRequest httpWReq = ebRequest.Create("http://www.baidu.com") as HttpWebRequest;
HttpWebResponse httpWResp = httpWReq.GetResponse() as HttpWebResponse;
if(httpWResp!=null)
{
// 其他业务逻辑
httpWResp.Close();
}
备注
此类包含对WebResponse类的属性和方法的HTTP特定用法的支持。该HttpWebResponse类用于构建发送HTTP请求HTTP独立的客户端应用程序和接收HTTP响应。
不要将HttpWebResponse与ASP.NET应用程序中使用的HttpResponse类混淆,后者的方法和属性通过ASP.NET的内部Response对象公开。
永远不应该直接创建HttpWebResponse类的实例。而是使用通过调用HttpWebRequest.GetResponse返回的实例。您必须调用Stream.Close或HttpWebResponse.Close方法来关闭响应并释放连接以便重用。没有必要同时调用Stream.Close和HttpWebResponse.Close,但这样做不会导致错误。
从 Internet 资源返回的常见标头信息公开为类的属性。 请参阅下表有关的完整列表。 可以从读取其他标头Headers属性作为名称/值对。
下表显示了可通过属性的常见 HTTP 标头HttpWebResponse类。
| Header | Property |
|---|---|
| 内容编码方式 | ContentEncoding |
| 内容长度 | ContentLength |
| 内容类型 | ContentType |
| 最后修改时间 | LastModified |
| 服务器 | Server |
作为返回来自 Internet 资源的响应的内容Stream通过调用GetResponseStream方法。
| CharacterSet |
获取响应的字符集。 |
| ContentEncoding |
获取用于对响应体进行编码的方法。 |
| ContentLength |
获取请求返回的内容的长度。 |
| ContentType |
获取响应的内容类型。 |
| Cookies |
获取或设置与此响应关联的 Cookie。 |
| Headers |
获取来自服务器的与此响应关联的标头。 |
| IsFromCache |
获取一个 Boolean 值,该值指示此响应是否为从缓存中获取的。 (Inherited from WebResponse) |
| IsMutuallyAuthenticated |
获取一个 Boolean 值,该值指示客户端和服务器是否都已经过身份验证。 |
| LastModified |
获取最后一次修改响应内容的日期和时间。 |
| Method |
获取用于返回响应的方法。 |
| ProtocolVersion |
获取响应中使用的 HTTP 协议的版本。 |
| ResponseUri |
获取响应请求的 Internet 资源的 URI。 |
| Server |
获取发送响应的服务器的名称。 |
| StatusCode |
获取响应的状态。 |
| StatusDescription |
获取与响应一起返回的状态说明。 |
| SupportsHeaders |
获取指示标头是否受支持的值。 |
| Close() |
关闭响应流。 |
| CreateObjRef(Type) |
创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。 (Inherited from MarshalByRefObject) |
| Dispose() |
释放 WebResponse 对象使用的非托管资源。 (Inherited from WebResponse) |
| Dispose(Boolean) |
释放由 HttpWebResponse 使用的非托管资源,并可根据需要释放托管资源。 |
| Equals(Object) |
确定指定的对象是否等于当前对象。 (Inherited from Object) |
| GetLifetimeService() |
检索控制此实例的生存期策略的当前生存期服务对象。 (Inherited from MarshalByRefObject) |
| GetObjectData(SerializationInfo, StreamingContext) |
使用将目标对象序列化所需的数据填充 SerializationInfo。 |
| GetResponseHeader(String) |
获取与响应一起返回的标头的内容。 |
| GetResponseStream() |
获取流,该流用于读取来自服务器的响应的体。 |
| GetType() |
获取当前实例的 Type。 (Inherited from Object) |
| InitializeLifetimeService() |
获取生存期服务对象来控制此实例的生存期策略。 (Inherited from MarshalByRefObject) |
| MemberwiseClone() |
创建当前 Object 的浅表副本。 (Inherited from Object) |
| MemberwiseClone(Boolean) |
创建当前 MarshalByRefObject 对象的浅表副本。 (Inherited from MarshalByRefObject) |
| ToString() |
返回表示当前对象的字符串。 (Inherited from Object) |
C# HTTP系列2 HttpWebReponse类的更多相关文章
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- c/c++ 模板与STL小例子系列<二> 模板类与友元函数
c/c++ 模板与STL小例子系列 模板类与友元函数 比如某个类是个模板类D,有个需求是需要重载D的operator<<函数,这时就需要用到友元. 实现这样的友元需要3个必要步骤 1,在模 ...
- Java JUC之Atomic系列12大类实例讲解和原理分解
Java JUC之Atomic系列12大类实例讲解和原理分解 2013-02-21 0个评论 作者:xieyuooo 收藏 我要投稿 在java6以后我们不但接触到了Loc ...
- Hibernate 系列 05 - Session 类
引导目录: Hibernate 系列教程 目录 前言: Session是Hibernate运作的中心,对象的生命周期.事务的管理.数据库的存取都与Session息息相关. 就如同在编写JDBC时需要关 ...
- JVM系列文章(四):类载入机制
作为一个程序猿,只知道怎么用是远远不够的. 起码,你须要知道为什么能够这么用.即我们所谓底层的东西. 那究竟什么是底层呢?我认为这不能一概而论.以我如今的知识水平而言:对于Web开发人员,TCP/IP ...
- C# HTTP系列1 HttpWebRequest类
系列目录 [已更新最新开发文章,点击查看详细] .NET Framework 中 System.Net 命名空间下提供了 HttpWebRequest 和 HttpWebResponse 2个 ...
- dagger2系列之生成类实例
上一节的最后,我讲到一次注入生成类实例的生成步骤.先来回顾一下: 1 Module中存在创建方法,则看此创建方法有没有参数 如果有参数,这些参数也是由Component提供的,返回步骤1逐一生成参数 ...
- jvm系列(一):java类的加载机制
java类的加载机制 1.什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装 ...
- 前端学PHP之面向对象系列第一篇——类和对象
× 目录 [1]类 [2]成员属性[3]成员方法[4]对象[5]成员访问[6]this 前面的话 面向对象程序设计(OOP)是一种计算机编程架构.计算机程序由单个能够起到子程序作用的单元或对象组成,为 ...
随机推荐
- RootKit随手记(一)RootKit的驱动隐藏、读取配置、卸载安装
边学习边更新这专题,随手记录一下用到的思路,给自己看的(所以读者看可能有些懵,不好意思...) RootKit随手记(一)RootKit的驱动隐藏.读取配置.卸载安装 一.驱动隐藏 1. 隐藏原理 一 ...
- Node.js能解决什么问题?
一.使用Node.js能解决什么问题 对于PHP.JAVA.Python等服务端语言中,为每个客户端连接创建一个新的线程,而每个线程需要大约2M的内存,理论上,具有8GB内存的服务器可以同时连接的最大 ...
- CSS3 transform 属性(2D,3D旋转)
一.语法 div{ transform:rotate(7deg); -ms-transform:rotate(7deg); /* IE 9 */ -moz-transform:rotate(7deg) ...
- css3伪类和伪元素你都懂了吗
什么是伪类? 伪类用于定义元素的特殊状态. 例如,它可用于: 当用户将鼠标悬停在元素上时为其设置样式 访问和未访问的链接不同样式 在获得焦点时设置元素的样式 伪类的语法 后代选择器匹配作为指定元素后代 ...
- MQ 分布式事务 -- 微服务应用
1.背景 友情链接:https://www.cnblogs.com/Agui520/p/11187972.html https://blog.csdn.net/fd2025/article/detai ...
- 前端开发JS——快速入门
1.JS的核心标准ECMAScript 组成 ECMAScript------>核心语法标准 DOM------------->对文档节点的操作 ...
- IntelliJ IDEA 中使用 Lambok (注解无效问题的解决)
一,概述 Lambok可以说一个能很大提高开发效率的插件,只要在使用注解的方式就能实现很多常用的功能.如常用的@Data能在编译阶段自动生成toString方法,getter方法setter方法等. ...
- 剑指:和为S的连续正数序列
题目描述 输入一个正数 s,打印出所有和为 s 的连续正数序列(至少含有两个数). 例如输入 15,由于 1+2+3+4+5=4+5+6=7+8=15,所以结果打印出 3 个连续序列 1-5.4-6 ...
- LeeCode——Combine Two Tables
Table: Person +-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId ...
- java8新特性—四大内置核心接口
java8新特性-四大内置核心接口 四大内置核心接口 //消费型接口 Consumer<T>:: vode accept(T t); //供给型接口 Supplier<T>:: ...