Windows Phone 7上的超时httpClient

时间:2015-10-29 13:30:20

标签: c# windows-phone-8 timeout windows-phone-7.1 dotnet-httpclient

我有一个关于http客户端Windows手机超时的问题,我已经在微软论坛上阅读并知道默认超时为100秒。有没有办法改变默认超时?我已经修改了我的编码,但它没什么,我想改变大约4分钟,然后获得超时请求。它是我的编码样本

 HttpClientHandler _handler = new HttpClientHandler();
                _handler.CookieContainer = InfosysHttpClient.COOKIE_CONTAINER;
                _handler.UseCookies = true;

                //CancellationTokenSource cts = new CancellationTokenSource(new TimeSpan(0, 0,request.Timeout, 0, 300));

                //var cts = new CancellationTokenSource();

                HttpClient _client = new HttpClient(_handler);
                //cts.CancelAfter(new TimeSpan(0, 0, request.Timeout, 0, 300));
                //_client.Timeout = Thread.Sleep((TimeSpan.FromMinutes(2)));
                //_client.Timeout = new TimeSpan(0, 0,request.Timeout, 0, 300);


                try
                {     


                    HttpResponseMessage _result = await _client.PostAsync(request.Url, _content);

                        _resp.Message = await _result.Content.ReadAsStringAsync();

                        _resp.Status = _result.StatusCode.ToString();

                }

1 个答案:

答案 0 :(得分:0)

正如您所说,并且在您阅读时,无法创建延长的超时期限。

如果你确实需要更长的超时时间,你需要自己进行套接字连接,并自己处理整个过程,这样你就可以设置你想要的任何超时。请注意可能需要强行保持连接打开以停止无线电超时 保持连接打开更长时间以应对可能的响应会对资源和电池使用产生负面影响,因此请确保您已完全理解并考虑了您尝试实现的所有影响。