8
Cách đặt thuộc tính Thời gian chờ thành hoạt động HttpClient. Mẫu mã tôi đã sử dụng ở bên dưới.Cách đặt thời gian chờ cho hoạt động yêu cầu máy khách http trong windows phone 8.1/Windows 8.1
public HttpClient httpClient;
public CancellationTokenSource cts;
Public void SendRequest(addressUri,postrequestbody)
{
HttpHelper.CreateHttpClient(ref httpClient);
cts = new CancellationTokenSource();
HttpRequestMessage msg =
new HttpRequestMessage(new HttpMethod("POST"),
new Uri(addressUri));
msg.Content = new HttpStringContent(postrequestbody);
msg.Content.Headers.ContentType =
new HttpMediaTypeHeaderValue("application/json");
HttpResponseMessage response =
await httpClient.SendRequestAsync(msg).AsTask();
if (response.StatusCode == HttpStatusCode.Ok)
{
}
}
Các bạn đã thử một thời gian chờ> 60 giây? (ví dụ của bạn sử dụng 2 giây) Tôi đã cố gắng thiết lập 10 phút như vậy ..... var response = await httpClient.PutAsync (hoạt động, tải trọng, mới CancellationTokenSource (600000) .Token); Nhưng điều này trả về 404 NOT FOUND sau 60 giây. – iupchris10
@ iupchris10 Tôi biết nó giống như 2 năm quá muộn, nhưng 60 giây là ít hơn 10 phút. Nếu bạn có mã phản hồi (nghĩa là máy chủ đã _responded_) thì yêu cầu của bạn chưa hết thời gian chờ. Tôi sẽ _expect_ hành vi này vì đó là hành vi chính xác. Mã ở trên sẽ hủy yêu cầu của bạn sau 10 phút NẾU không có phản hồi/phản hồi mất quá nhiều thời gian. Đó không phải là trường hợp trong ví dụ của bạn. – john