1.HTTP亦即Hpyer Text Transfer Protocal的缩写,它是现代互联网上最重要的一种网络协议,超文本传输协议位于TCP/IP协议的应用层,是一个面向   无连接、简单、快速的C/S结构的协议 。HTTP的工作过程大体上分连接、请求、响应和断开连接

2..NET类库中提供了WebRequest和WebResponse就是利用这两个类实现的网络功能

HttpWebRequest:HttpWebRequest 类对 WebRequest 中定义的属性和方法提供支持,也对使用户能够直接与使用

HTTP 的服务器交互的附加 属性和方法提供支持。

http://msdn.microsoft.com/zh-cn/library/system.net.httpwebrequest.connection(v=VS.80).aspx

WebResponse 类是 abstract 基类,协议特定的响应类从该抽象基类派生。应用程序可以使用 WebResponse 类的实例以协议不可知的方式参与请求和响应事务,而从 WebResponse 派生的协议特定的类携带请求的详细信息

http://msdn.microsoft.com/zh-cn/library/system.net.webresponse(v=VS.80).aspx

3.简单应用:

导入命名空间:using System.Net   using System.IO

程序使用 HTTP 协议和服务器交互主要是进行数据的提交,通常数据的提交是通过 GET 和 POST 两种方式

//创建一个url新的httpwebrequest 对象

HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost:1782/WebForm1.aspx?");

//设置myHttpWebRequest 对象属性

myHttpWebRequest.Method = "post"

myHttpWebRequest.ContentType = "application/x-www-form-urlencoded";

myHttpWebRequest.UserAgent = ".NET Framework Client";

//输入参数 id=中文和Econding

string inputData = System.Console.ReadLine();

//创建utf-8 或者GB2312 来处理中文

// 处理英文就是这个就可以

//ASCIIEncoding encoding = new ASCIIEncoding();

Encoding myEncoding = Encoding.GetEncoding("utf-8");

byte[] byteinputdata = myEncoding.GetBytes(inputData);

//写入当前流对象发送个服务器

myHttpWebRequest.ContentLength = byteinputdata.Length;

Stream newStream = myHttpWebRequest.GetRequestStream();

newStream.Write(byteinputdata, 0, byteinputdata.Length);

newStream.Close();

//获取服务器响应的结果(根据条件获取对象解析返回结果)

HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();

Stream streamResponse = myHttpWebResponse.GetResponseStream();

StreamReader streamRead = new StreamReader(streamResponse);

Char[] readBuff = new Char[256];

int count = streamRead.Read(readBuff, 0, 256);

System.Console.WriteLine("\nThe contents of HTML Page are :\n");

while (count > 0)

{

String outputData = new String(readBuff, 0, count);

System.Console.Write(outputData);

count = streamRead.Read(readBuff, 0, 256);

}

streamRead.Close();

streamResponse.Close();

myHttpWebResponse.Close();

转载于:https://www.cnblogs.com/linsu/archive/2011/12/04/2276124.html

HttpWebRequest WebResponse 对象简单了解相关推荐

  1. uniCloud云函数 云对象简单使用

    云对象简单使用 今天看了下文档 发现多了个 云对象 目前需要下载 3.4.0及以上版本 目前为 alpha版本 个人觉得云对象 让我们更加的能 贴近面向对象 https://www.dcloud.io ...

  2. java面向对象计算器怎么写_Java对象简单实用案例之计算器实现代码

    对 Java中的对象与属性,方法的使用,简单写了个案例 import java.util.Scanner; class Calculste { int a; //定义两个整数 int b; Strin ...

  3. Application对象 简单的聊天室

    使用Application对象可以使得多个用户在访问同一个asp.net应用程序时,能够共享信息,在多个用户同时访问asp.net时,都会产生一个Application对象.通常可以把共享的数据变量存 ...

  4. Aplication对象 简单聊天室(16)

    使用Application对象可以使得多个用户在访问同一个asp.net应用程序时,能够共享信息,在多个用户同时访问asp.net时,都会 产生一个Application对象.通常可以把共享的数据变量 ...

  5. JS(七)内置对象-简单类型与复杂类型

    1.内置对象 JavaScript 中的对象分为3种:自定义对象.内置对象.浏览器对象 前面两种对象是JS基础内容,属于ECMAScript : 第三种浏览器对象属于我们JS 独有的,属于JS API ...

  6. JDBC 利用反射技术将查询结果封装为对象(简单ORM实现)

    ORM(Object Relational Mapping)对象关系映射 public class ORMTest { public static void main(String[] args) t ...

  7. 002_JSONObject、JSONArray和JsonConfig对象简单使用

    1. JSONObject对象 1.1. JSONObject是一个无序的键值对集合.它的外部文本形式是一个用大括号括起来的字符串, 使用冒号分割键和值, 并且是用逗号分隔多个值. 1.2. JSON ...

  8. this表示当前对象简单实例

    直接上代码 class Message { private Channel channel ; // 保存消息发送通道 private String title ; // 消息标题 private S ...

  9. Js Date对象 简单操作

    //JavaScript Document var finalMonth =['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct',' ...

最新文章

  1. Android基础之应用程序组件
  2. EasyUI DataGrid 合并单元格
  3. c++类对象 指针区别
  4. css 大于号 标签_web前端教程之怎样学好css?
  5. 浅聊一下各类以太网媒体接口MII/RMII/SMII/GMII/RGMII/SGMII
  6. html:(21):重置按钮和label标签
  7. debian查询端口进程_Linux查看端口、进程情况及kill进程
  8. 计算机科学与技术范文,计算机科学与技术专业(范文).doc
  9. 案例学习BlazeDS+Spring之八InSync06“松耦合”UI同步事件通知
  10. zabbix 4.0 安装配置
  11. 用USBOOT软件修复U盘
  12. 汉字GB2312编码字符集
  13. 见证人人的衰落,讲一句活该
  14. opencv 图片染色 及 移动
  15. 【MDCC 2016】信息无障碍专题沙龙现场实录 | 附PPT下载
  16. 学习笔记1:异地容灾和负载均衡
  17. PTA数据结构第二章线性表
  18. 小米盒子刷arm linux,小米盒子刷成原生安卓系统操作步骤详解
  19. 计算机Excel怎么弄迷你图,【迷你图excel在哪里】Excel如何绘制迷你图
  20. PMOS和NMOS在开关应用中高侧和低侧驱动的对比

热门文章

  1. Editplus的扩展程序的删除
  2. [Nowcoder] 寻找子串
  3. BZOJ3945 : 无聊的邮递员
  4. 2017-2018-1 20155234《信息安全系统设计基础》第五周学习总结
  5. Unity3D 之NGUI各种脚本及应用
  6. MeteoInfoLab脚本示例:Streamline流线图
  7. IOS TableView的Cell高度自适应,UILabel自动换行适应
  8. XSS 前端防火墙 —— 无懈可击的钩子
  9. 4.Winform实现控件拖动
  10. 七牛上传文件小工具v0.1