我发送 POST 和 GET WebRequest 应该支持更长的互联网中断时间。这个想法是将失败(超时)的网络请求排队,并尝试定期重新发送它们,直到互联网再次启动并发送所有排队的网络请求。
但是,我似乎不能只重用旧的 WebRequest。我需要重新设置吗?
IAsyncResult result = request.BeginGetResponse (o => {
callCallback (o);
}, state);
仅使用以下命令设置请求时:
var request = HttpWebRequest.Create (String.Format (@"{0}/{1}", baseServiceUrl, path));
request.Method = "GET";
request.ContentType = "application/xml; charset=UTF-8";
request.Headers.Add ("Authority", account.Session);
return request;
它工作正常。但是在超时(和request.Abort ();
)之后,调用BeginGetResponse()
同一个 webrequest 就会冻结。