繁体   English   中英

来自 c# 的异步 Web Post API 调用

[英]Asynchronous web Post API call from c#

我正在编写代码:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(qry);

request.ContentType = "application/x-www-form-urlencoded";

request.Method = "POST";
request.KeepAlive = false;
request.ContentLength = 0;

byte[] data = Encoding.UTF8.GetBytes(crsAdapterXML.ToString());
request.ContentLength = data.Length;
Stream stream = request.GetRequestStream();
stream.Write(data, 0, data.Length);
stream.Close();
Stream objStream = request.GetResponse().GetResponseStream();

StreamReader objReader = new StreamReader(objStream);
result = Convert.ToString(objReader.ReadLine());

我需要使这个调用异步。 谁能帮我这个。

使用HttpWebRequest现在有点老派的 HTTP 请求方式。 有一些库提供了更好的 API 来做到这一点。

我建议您尝试 Microsoft 的HttpClient (System.Net.Http) 或RestSharp

可能还有更多,但这些是我知道的并且没有问题的。

两者都提供异步 API,因此您可以异步等待响应。

我对HttpWebRequest没有太多经验,但它似乎也公开了其方法的异步变体,如GetResponseAsyncGetRequestStreamAsync

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM