HttpWebrequest使用的注意点

1、HttpWebrequest相关属性的设置以及默认连接数量限制 System.Net.ServicePointManager.DefaultConnectionLimit

HttpWebRequest request=null;
request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";//GET,PUT等
request.Timeout = xxxx;//单位是毫秒
request.ContentType = "xxxx" ;
webRequest.KeepAlive = false;
webRequest.Proxy = null; System.Net.ServicePointManager.DefaultConnectionLimit = ;

2、HttpWebrequest相关方法的使用以及资源的释放

Stream myRequestStream = request.GetRequestStream();
myRequestStream.Write(byte[] buffer, int offset, int count);//写入请求流的内容
myRequestStream.Close();//HttpWebRequest的RequestStream及时关闭
HttpWebResponse response = (HttpWebResponse)request.GetResponse();//发送
Stream myResponseStream = response.GetResponseStream();
//获取返回值
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
string retString = myStreamReader.ReadToEnd();
myStreamReader.Close();//及时关闭
myResponseStream.Close();//及时关闭
response.Close();//及时关闭 最后要把HttpWebRequest及时关闭释放
if (request != null)
{
request.Abort();
}

3、HttpWebRequest使用过程中,各种资源的释放,有的地方也可以使用Using来进行释放.具体使用方法可以参照Using的用法来使用。

4、HttpWebRequest使用如果没有设置正确的属性以及资源没有及时释放的话,会导致很多问题

例如:HttpWebRequest获取GetResponse时会出现,长时间无响应。本作者在使用HttpWebRequest的时候就遇到过很多类似的问题,最后无外乎都是HttpWebRequest的属性和方法中的资源没有及时释放导致很多问题。

其他出现的问题,可以参照:

https://www.cnblogs.com/summer_adai/archive/2013/04/26/3045261.html

https://www.cnblogs.com/summer_adai/archive/2013/04/26/3045253.html

最新文章

  1. yield和send的执行循序彻底搞清
  2. Unity4.0的使用
  3. 烂泥:KVM使用裸设备配置虚拟机
  4. 准备学一学go-lang啦 ~~ 学习Go应该用什么姿势? !
  5. AP_AP系列 - 费用报表分析(案例)
  6. Android设计模式系列--原型模式
  7. disconf实践(一)
  8. js数组基础整理
  9. OCP读书笔记(26) - 题库(ExamF)
  10. 删除物品[JLOI2013]
  11. uva 10917 Walk Through The Forest
  12. 【深度学习篇】---CNN和RNN结合与对比,实例讲解
  13. java8 学习记录
  14. 20165223《JAVA程序设计》第一周学习总结
  15. tomcat生产环境JDK部署及虚拟主机等常用配置详解
  16. SNF快速开发平台MVC-Grid++集成打印
  17. py4CV例子3Mnist识别和ANN
  18. HDU-6395-矩阵快速幂
  19. day6 python学习
  20. vs 2015 结合新配置的IIS 发布网站过程中遇到的问题及解决办法?

热门文章

  1. C语言内存管理(内存池)
  2. 微信小程序中使用云开发获取openid
  3. Linux中通过ssh将客户端与服务端的远程连接
  4. XSL-FO知识点【一】
  5. MySQL 主从延迟几万秒 Queueing master event to the relay log(转)
  6. JAVA命名规范性总结
  7. Not so Mobile UVA - 839(二叉树的先序遍历)
  8. 示例 NetworkWordCount
  9. Python win32gui调用窗口到最前面
  10. SpringBoot学习(四)开发web应用