나는 POST와 GET WebRequest를 보내 오랜 기간의 인터넷 중단을 지원해야합니다. 아이디어는 실패한 (timedout) 웹 요청을 대기열에 넣고 인터넷이 다시 가동되고 대기중인 모든 WebRequest가 전송 될 때까지 정기적으로 다시 보내려고 시도하는 것입니다."실패한"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()
를 부른 후에는 단지 멈추게됩니다.
중복 될 수 있습니까? - http://stackoverflow.com/questions/2179626/reuse-a-httpwebrequest 그리고 다른 - http://stackoverflow.com/questions/4933450/can-i-reuse-httpwebrequest-without-disconnecting-from-the-server – Snixtor
그 질문은'Abort()'를 요구하지 않습니다. – Sunkas