webrequest 和 httpwebrequest 有啥区别
Posted
技术标签:
【中文标题】webrequest 和 httpwebrequest 有啥区别【英文标题】:what the difference between webrequest and httpwebrequestwebrequest 和 httpwebrequest 有什么区别 【发布时间】:2011-05-26 08:39:02 【问题描述】:似乎HttpWebRequest
拥有更多控制权,例如ReadWriteTimeout
。我想知道我是否应该坚持使用HttpWebRequest
,而不是WebRequest
【问题讨论】:
另见SO 好像这个问题每年都会重复:***.com/q/8209781/274502 【参考方案1】:我知道它的时间太长但仅供参考:
网络请求
System.Object
System.MarshalByRefObject
System.Net.WebRequest
WebRequest
是一个抽象基类。所以你实际上并不直接使用它。您可以通过它的派生类使用它 - HttpWebRequest
和 FileWebRequest
。
您使用 WebRequest
的 Create 方法来创建 WebRequest
的实例。 GetResponseStream
返回data stream
。
还有继承自WebRequest
的FileWebRequest
和FtpWebRequest
类。通常,您会使用WebRequest
来发出请求并将返回转换为HttpWebRequest
、FileWebRequest
或FtpWebRequest
,具体取决于您的请求。下面是一个例子:
示例:
var _request = (HttpWebRequest)WebRequest.Create("http://stackverflow.com");
var _response = (HttpWebResponse)_request.GetResponse();
希望这会有所帮助!
【讨论】:
【参考方案2】:WebRequest
是HttpWebRequest
和here 列出的其他一些请求的基类/父类。
目前,他们是:
System.IO.Packaging.PackWebRequest
System.Net.FileWebRequest
System.Net.FtpWebRequest
System.Net.HttpWebRequest
【讨论】:
【参考方案3】:WebRequest
可以是 HttpWebRequest
/FtpWebRequest
/FileWebRequest
(或将来更多......)
【讨论】:
以上是关于webrequest 和 httpwebrequest 有啥区别的主要内容,如果未能解决你的问题,请参考以下文章
c#利用WebClient和WebRequest获取网页源代码的比较
HttpRequest、HttpWebRequest和WebRequest的区别
使用HttpClient和WebRequest时POST一个对象的写法