当前位置:   article > 正文

[C#]Http异步请求_c# httpwebrequest 异步请求

c# httpwebrequest 异步请求

在WinForm设计中,如果直接使用Http请求会导致UI等待Http请求返回而出现界面假死现象。

所以我们可以使用异步的Http请求来解决这个问题。


1.    设置请求类型并发送请求的方法HttpPost:

  1. public static void HttpPost(string Url)
  2. {
  3. try
  4. {
  5. HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
  6. request.Method = "POST";//这里是POST请求,可以改成GET
  7. request.ContentType = "application/x-www-form-urlencoded";
  8. request.BeginGetResponse(new AsyncCallback(Compleate), request);
  9. }
  10. catch
  11. {
  12. MessageBox.Show("请求失败.");
  13. }
  14. }

2.异步接收返回结果的方法Compleate:

  1. public static void Compleate(IAsyncResult asyncResult)
  2. {
  3. try
  4. {
  5. HttpWebRequest req = (asyncResult.AsyncState as HttpWebRequest);
  6. HttpWebResponse res = req.EndGetResponse(asyncResult) as HttpWebResponse;
  7. StreamReader reader = new StreamReader(res.GetResponseStream());
  8. MessageBox.Show(reader.ReadToEnd());
  9. }
  10. catch
  11. {
  12. MessageBox.Show("获取失败.");
  13. }
  14. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/259496
推荐阅读
相关标签
  

闽ICP备14008679号