0
WebRequest.Timeout
은 요청에 대한 시간 제한을 설정했지만 서버가 응답을 시작할 때까지만 적용되는 것처럼 보입니다.불완전한 느린 응답의 WebRequest 시간 초과 설정
서버가 일부 데이터를 보내고 응답을 멈 추면 시간 만료를 원한다면 어떻게해야합니까?
WebRequest.Timeout
은 요청에 대한 시간 제한을 설정했지만 서버가 응답을 시작할 때까지만 적용되는 것처럼 보입니다.불완전한 느린 응답의 WebRequest 시간 초과 설정
서버가 일부 데이터를 보내고 응답을 멈 추면 시간 만료를 원한다면 어떻게해야합니까?
당신은 읽기 호출의 ...Async
버전을 사용하고 타임 아웃 Task.Wait(int)
를 호출 할 수
var response = request.GetResponse();
var responseStream = response.GetResponseStream();
using (StreamReader reader = new StreamReader(responseStream)) {
var task = reader.ReadLineAsync();
if (!task.Wait(1000)) {
throw new Exception("Timed out after 1 sec.");
}
string line = task.Result;
// etc....
}