【问题标题】:How to call a Web API End Point which wont wait for response如何调用不会等待响应的 Web API 端点
【发布时间】:2017-05-30 16:41:38
【问题描述】:

我们正在从组件调用 Web API 端点 (EP),并且我们不希望组件等到它从端点获得响应。 我们正在使用下面的代码调用端点,下面的代码正在等待端点的响应。

有人可以提供一些见解来实现这一点。 提前致谢。

var webAddr = "EndPointURL";

var httpWebRequest = (HttpWebRequest)WebRequest.Create(webAddr);

httpWebRequest.Method = "POST";
httpWebRequest.ContentLength = 0;
httpWebRequest.KeepAlive = false;
httpWebRequest.Timeout = System.Threading.Timeout.Infinite;
httpWebRequest.Headers.Add("Authorization", Token);
httpWebRequest.Headers.Add("BatchId", 25);
httpWebRequest.Headers.Add("UserName", "ABC");

var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();   

using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
    var result = streamReader.ReadToEnd();
}

【问题讨论】:

    标签: asp.net-web-api asp.net-web-api2


    【解决方案1】:
    Task.Run(() =>
    {
        var request = new HttpRequestMessage(HttpMethod.Post, "EndPointURL");
        request.Headers.Authorization = new AuthenticationHeaderValue("???", "???");
        request.Headers.Add("BatchId", "25");
        request.Headers.Add("UserName", "ABC");
        var client = new HttpClient();
        client.SendAsync(request);
    });
    
    // do stuff
    

    【讨论】:

    • 您好 Peco,感谢您的回复。
    猜你喜欢
    • 2021-07-15
    • 1970-01-01
    • 1970-01-01
    • 2021-08-28
    • 2022-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-14
    相关资源
    最近更新 更多