2010-07-28 5 views
5

мой код:HttpWebRequest Timeout

System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("http://192.168.2.2/web/movielist"); 
req.Timeout = 2000; 
System.Net.WebResponse res = req.GetResponse(); 
System.IO.Stream responseStream = res.GetResponseStream(); 

Запрашиваемый документ (MovieList) очень большой документ, и это требует более 10 секунд, чтобы получить его завершения.

Я хочу установить только время установления соединения. Насколько я вижу, req.Timeout - это тайм-аут для всего запроса, который не только устанавливает соединение. Для получения документа не должно быть таймаута.

+0

Здесь вы можете найти ответ: http://stackoverflow.com/questions/1500955/adjusting-httpwebrequest-connection-timeout-in-c –

ответ

1

Этот тайм-аут в миллисекундах - так 2000мс = всего 2 секунды. Вы не можете указать тайм-аут установления соединения - время ожидания для всего запроса. Попробуйте изменить 2000 на 20000 (20 секунд) или выше, чтобы избежать тайм-аутов.