前端开发入门到精通的在线学习网站

网站首页 > 资源文章 正文

C# 之门课程系列-23(c#基础知识入门)

qiguaw 2024-09-09 05:36:35 资源文章 24 ℃ 0 评论

网络

在网络环境下,我们最感兴趣的两个名称空间是 system.Net 和 system,Net.sockets,system.Net 名称空间通常与较高层的操作有关。

WebClient类

Mircsoft在dotnet1.1框架下提供的向 URI 标识的资源发送数据和从 URI 标识的资源接收数据的公共方法。 通过这个类,大家可以在脱离浏览器的基础上模拟浏览器对互联网上的资源的访问和发送信息。 WebClient类不能被继承,在dotnet1.1框架中已经为我们提供了WebRequest和WebResponse两个强大的类来处理向URI标示的资源和获取数据了。然后,不足的是利用WebRequest和WebResponse时设置过于复杂。 使用起来颇为费劲。于是乎有了现在的WebClient,WebClient其实可以理解为对WebRequest和WebResponse等协作的封装。它使人们使用起来更加简单方便,然后它也有先天不足的地方。那就是缺少对cookies/session的 支持,用户无法对是否自动url转向的控制,还有就是缺少对代理服务器的支持。关于session/url转向控制/代理 服务器的使用我将在以后关于WebRequest/WebResponse的话题里面向大家介绍。

BaseAddress

获取或设置 WebClient 发出请求的基 URI。

Container(从 Component 继承)

获取 IContainer,它包含 Component。

Credentials

获取或设置用于对象 Internet 资源的请求进行身份验证的网络凭据。

Headers

获取或设置与请求关联的标头名称/值对集合。

QueryString

获取或设置与请求关联的查询名称/值对集合。

ResponseHeaders

获取与响应关联的标头名称/值对集合。

Site(从 Component 继承)

获取或设置 Component 的 ISite。

DownloadData

从具有指定 URI 的资源下载数据。

DownloadFile

从具有指定 URI 的资源将数据下载到本地文件。

OpenRead

为从具有指定 URI 的资源下载的数据打开一个可读的流。

OpenWrite

为从具有指定 URI 的资源下载的数据打开一个可读的流。

UploadData

已重载。将数据缓冲区上载到具有指定位置 URI 的资源。

UploadFile

已重载。将本地文件上载到具有指定 URI 的资源。

UploadValues

已重载。将名称/值集合上载到具有指定位置 URI 的资源。

WebClient client = new WebClient();
            client.Headers.Add("UserAgent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36 Edg/87.0.664.75");
            Stream stream = client.OpenRead("http://www.baidu.com");
            StreamReader sr = new StreamReader(stream);
            string content = sr.ReadToEnd();
            stream.Close();
            sr.Close();
            Console.WriteLine(content);
            Console.ReadKey();
 WebClient client = new WebClient();
            client.Headers.Add("UserAgent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36 Edg/87.0.664.75");
            client.DownloadFile("http://www.baidu.com", @"d:\i.html");
            Console.ReadKey();

下载一个文件

WebRequest类和WebResponse类

						 HttpWebRequest request =(HttpWebRequest) WebRequest.Create("http://www.baidu.com");
            request.Headers.Add("UserAgent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36 Edg/87.0.664.75");
            request.Method = "GET";
            request.Credentials = CredentialCache.DefaultCredentials;
            WebResponse response = request.GetResponse();
            StreamReader sr = new StreamReader(response.GetResponseStream());
            string content = sr.ReadToEnd();
            response.Close();
 
            Console.WriteLine(content);
            Console.ReadKey();
 					WebProxy wp = new WebProxy("192.168.0.100:8080", true);
					wp.Credentials = new NetworkCredential("user", "123456");
					request.Proxy = wp;

代理服务器用的

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表