对HttpWebRequest进行POST请求的简单替代方案?

时间:2012-01-10 12:38:52

标签: c# asp.net

我需要使用http POST请求在远程服务器上触发操作。服务器发送响应YN,以通知我操作是否成功。

我正在考虑使用HttpWebRequest来做这件事,但这看起来太复杂了。要使用此类,您必须设置所有标题,例如内容类型和内容长度。

是否有更快捷的方式发送POST请求,而不需要设置此类较低级别的属性?

4 个答案:

答案 0 :(得分:4)

试试这个 WebClient

 // Create a new WebClient instance.
 WebClient myWebClient = new WebClient();
 byte[] responseArray = myWebClient.UploadData("YOUR URI","POST","DATA to be Posted");

答案 1 :(得分:2)

您可以尝试使用WebClient课程。它更简单,它基本上是HttpWebRequest包装。它封装了你试图避免的所有复杂逻辑。

答案 2 :(得分:2)

我认为框架中最简单的内置类是WebClient。 Scott Hanselman an example关于如何使用它来执行获取和发布。 This SO answer对如何发布数据也有很好的概述。

如果您可以控制要发布到的服务器,则可能需要考虑使用HTTP status codes而不是某些自定义方法进行回复。

答案 3 :(得分:0)

wcf web api项目有一个http客户端。它非常易于使用。 http://wcf.codeplex.com/