サービスを待つために HttpClient を作成しました。これは非同期関数のスレッドで実行されます。問題は、サービスが 2 ~ 3 分後に応答を送信することです。現時点では、サーバーから正常な応答を受け取る前にタスクがキャンセルされます。応答を 2、3 分以上待つ可能性はありますか? 次の私のコードでは:
private async Task<string> loginService()
{
try
{
string post_data = "user_data";
string uri = "http://myserver.de";
HttpClient httpClient = new HttpClient();
httpClient.MaxResponseContentBufferSize = 256000;
httpClient.DefaultRequestHeaders.Add("user-agent", "Mozilla/5.0 (compatible; MSIE 10.0; WIndows NT 6.2; WOW64; Trident/6.0)");
HttpContent content = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("data", post_data)
});
HttpResponseMessage response = await httpClient.PostAsync(new Uri(uri), content);
response.EnsureSuccessStatusCode();
string responseBodyAsText = await response.Content.ReadAsStringAsync();
return responseBodyAsText;
}
catch
{
return "Error...";
}
}
3 分後に応答を得るには、どの方法が最適ですか?