首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >WebClient与HttpWebRequest/HttpWebResponse

WebClient与HttpWebRequest/HttpWebResponse
EN

Stack Overflow用户
提问于 2009-11-08 04:55:49
回答 8查看 53.5K关注 0票数 136

在我看来,大多数可以用HttpWebRequest/Response完成的任务也可以用WebClient类完成。我在某处读到WebClientWebRequest/Response的高级包装器。

到目前为止,我还看不到任何不能用WebClient完成的用HttpWebRequest/Response完成的事情,也看不到HttpWebRequest/Response会给您提供更多的“细粒度”控制。

什么时候应该使用WebClient,什么时候使用HttpWebRequest/Response?(显然,HttpWebRequest/Response是特定于HTTP的。)

如果HttpWebRequest/ResponseWebClient级别更低,我可以使用HttpWebRequest/Response完成哪些使用WebClient无法完成的任务

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-11-08 05:01:55

使用HttpWebRequest可以让您更好地控制请求。您可以设置cookies、标头、协议等。在响应中,您还可以检索cookie和标头

票数 91
EN

Stack Overflow用户

发布于 2009-11-09 00:14:14

HttpWebRequest公开了更多的东西,允许你进行细粒度的协议控制,例如:你是否想要使用Keep-Alive,使用哪个连接池,是否缓冲写操作,等等。

WebClient不会公开所有这些内容(尽管您可以从WebClient继承子类并获取对底层请求对象的访问权限)。

当你只想做一个操作(例如: POST/GET/Form upload)而不愿意创建和管理HttpWebRequestRequestStreamHttpWebResponse和响应流时,WebClient非常有用。

票数 56
EN

Stack Overflow用户

发布于 2009-11-08 05:02:46

来自Tim Heuer的博客- http://timheuer.com/blog/archive/2008/03/14/calling-web-services-with-silverlight-2.aspx

相反,在Silverlight中,你会想要使用WebClient或HttpWebRequest。有什么关系呢?这是timheuer版本。WebClient是一种更简单的实现,可以非常轻松地执行GET请求并获得响应流。当你需要对请求进行更细粒度的控制,需要发送头或其他定制时,HttpWebRequest是很棒的。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1694388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档