[英]Asp.net mvc web api async request result
我有一個Web API控制器動作,該動作將請求發送到另一台服務器並獲取圖像。
public class MyController : ApiController
{
public async Runner<HttpResponseMessage> Wms()
{
return await Run();
}
private Task<HttpResponseMessage> Run()
{
HttpRequestMessage requestMessage = new HttpRequestMessage();
requestMessage.RequestUri = "http://....";
foreach (var header in this.Request.Headers)
requestMessage.Headers.Add(header.Key, header.Value);
return requestMessage.SendAsync();
}
}
如何獲取requestMessage.SendAsync()
異步請求結果
您需要將async修飾符添加到方法中,然后await SendAsync()
:
private async Task<HttpResponseMessage> RunAsync()
{
HttpRequestMessage requestMessage = new HttpRequestMessage();
requestMessage.RequestUri = "http://....";
foreach (var header in this.Request.Headers)
requestMessage.Headers.Add(header.Key, header.Value);
HttpResponseMessage response = await requestMessage.SendAsync();
string resultData = await response.Content.ReadAsStringAsync();
}
或者,如果您想在Wms
進行響應,則可以await
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.