HttpWebRequest 以及WebRequest的使用
1.WebRequest的发送数据以及接收数据
class Program
{
static void Main(string[] args)
{
//创建一个实例并发送请求
HttpWebRequest we = (HttpWebRequest)WebRequest.Create("http://hao.360.cn/?src=360c");
we.Method = "Get";
we.KeepAlive = true;
//设置返回数据超时的时间30s
we.Timeout = ;
//开始异步获得发过来的数据
we.BeginGetResponse(new AsyncCallback(Callback), we); Console.ReadKey();
} static void Callback(IAsyncResult result)
{
HttpWebRequest we = (HttpWebRequest)result.AsyncState;
//结束获得的数据
WebResponse web = we.EndGetResponse(result);
//读取返回来的数据
using (Stream stream = web.GetResponseStream())
{
StreamReader streamReader = new StreamReader(stream);
string ss = streamReader.ReadToEnd();
Console.Write(ss);
}
}
}
2.HttpWebRequest的使用
class Program
{
static void Main(string[] args)
{
//创建一个请求实例
WebRequest web = (HttpWebRequest)HttpWebRequest.Create("http://www.baidu.com");
web.Method = "Post";
//开始异步发送请求数据
web.BeginGetRequestStream(new AsyncCallback(AsyncCallback), web);
Console.ReadKey();
} //发送数据 可以考虑发送登录的密码以及账号信息等
static void AsyncCallback(IAsyncResult result)
{
HttpWebRequest web = (HttpWebRequest)result.AsyncState;
using (Stream stream = web.EndGetRequestStream(result))
{
byte[] postData = Encoding.UTF8.GetBytes("你好");
stream.Write(postData, , postData.Length);
}
//开始异步接收数据
web.BeginGetResponse(new AsyncCallback(CallbackResponse), web); } //接收服务器返回的数据
static void CallbackResponse(IAsyncResult result)
{
HttpWebRequest web = (HttpWebRequest)result.AsyncState;
//结束返回的请求数据
HttpWebResponse response = (HttpWebResponse)web.EndGetResponse(result);
//输出返回的数据
using (Stream stream = response.GetResponseStream())
{
StreamReader streamReader = new StreamReader(stream);
//Console.WriteLine(streamReader.ReadToEnd()); File.WriteAllText(@"C:/12e.txt", streamReader.ReadToEnd(),Encoding.UTF8);
}
} }
HttpWebRequest 以及WebRequest的使用的更多相关文章
- .net学习笔记----HttpRequest,WebRequest,HttpWebRequest区别
WebRequest是一个虚类/基类,HttpWebRequest是WebRequest的具体实现 HttpRequest类的对象用于服务器端,获取客户端传来的请求的信息,包括HTTP报文传送过来的所 ...
- C#,WebRequest类、HttpWebRequest类与HttpRequest类的区别
C#,WebRequest类和HttpWebRequest类的区别? httpWebRequest是webRequest的子类,httpWebRequest是基于http协议的 . HttpWebRe ...
- 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中发送GET/HTTP/HTTPS请求,因为有的时候需 要获取认证信息(如Cookie),所以返回的是HttpWeb ...
- Windows Phone 十五、HttpWebRequest
Windows 运行时中支持网络资源访问的对象:HttpWebRequest 对象 发送 GET/POST 请求,HttpHelper 封装,超时控制. HttpClient 对象 发送 GET/PO ...
- C# HttpWebRequest GET HTTP HTTPS 请求
下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中发送GET/HTTP/HTTPS请求,因为有的时候需要获取认证信息(如Cookie),所以返回的是HttpWebResponse ...
- 通过HttpWebRequest请求与HttpWebResponse响应方式发布接口与访问接口
一.API接口的编码 1.首页的页面代码: protected void Page_Load(object sender, EventArgs e) { /* * 请求路径:http://xxxx/i ...
- 用HttpWebRequest提交带验证码的网站
using System; using System.Drawing; using System.IO; using System.Net; using System.Text; using Syst ...
- 使用HttpWebRequest发送自定义POST请求
平时用浏览器看网页的时候,点击一下submit按钮的时候其实就是给服务器发送了一个POST请求.但是如何在自己的C#程序里面实现类似的功能呢?本文给出了一个简单的范例,可以实现类似的和web serv ...
- 使用HttpWebrequest对网站进行模拟操作(附登陆百度demo)
// a[href=#viewSource]"); //查看源代码标签 viewSourceArr.attr("title", "查看源代码"); v ...
随机推荐
- 2016/3/21 面向对象: ①定义类 ②实例化对象 ③$this关键字 ④构造函数 ⑤析构函数 ⑥封装 ⑦继承
一:定义类 二:实例化对象 //定义类 class Ren { var $name; var $sex; var $age; function Say() { echo "{$this- ...
- HubbleDotNet开源全文搜索数据库项目--技术详解
HubbleDotNet 简介 HubbleDotNet 和 Lucene.net 性能对比测试 HubbleDotNet 和 Lucene.Net 匹配相关度的比较 HubbleDotNet 软件架 ...
- HTTP传输二进制初探
[转]HTTP传输二进制初探 http://www.51testing.com/?uid-390472-action-viewspace-itemid-233993 [转]HTTP传输二进制初探 上一 ...
- Masonry scrollview循环布局
前言 说到iOS自动布局,有很多的解决办法.有的人使用xib/storyboard自动布局,也有人使用frame来适配.对于前者,笔者并不喜欢,也不支持.对于后者,更是麻烦,到处计算高度.宽度等,千万 ...
- 如何制作.a静态库?合成多架构静态库?
08_01静态库 08_02制作静态库 .a 1.新建项目com+shift+n:选择Framework&Library. 2.下一步. 项目名不能为中文. 3.编写代码之后.用真机运行.会自 ...
- appium学习【三】:截图时,图片命令中包含当前的函数名,以区分错误是在哪个函数报的
import sys funcName = sys._getframe().f_back.f_code.co_name #获取调用函数名 print sys._getframe().f_code.co ...
- 杂项-Java:JBoss
ylbtech-杂项-Java:JBoss 是一个基于J2EE的开放源代码的应用服务器. JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用.JBoss是一个管理EJB的容器和服务器,支持E ...
- OSI模型与TCP/IP模型基础
一.OSI七层模型 OSI(Open System Interconnection),OSI是一个开放性的通行系统互连参考模型,是一个协议规范.OSI七层模型是一种框架性的设计方法 ,建立七层模型的主 ...
- ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(二)数据库初始化、基本登录页面以及授权逻辑的建立
前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...
- Linux 常用命令十四 killall和pkill
用killall杀死所有同名的进程. wang@wang:~/workpalce/git$ ps -aux | grep vim wang pts/ S+ : : vim a wang pts/ S+ ...