ResponseStream перечитать после тайм-аута чтения

Мне интересно, когда я читаю поток ответа и происходит тайм-аут, могу ли я повторить чтение? Или я должен сделать новый запрос? Сервер, с которого я загружаю, не поддерживает возобновление, поэтому мне нужно защищаться от таймаутов.

2 ответа

Решение

Нет, вы не можете повторить попытку. Вам необходимо переиздать запрос

Откуда вы знаете, что сервер не принимает резюме? Это Accept-Ranges заголовок действительно отсутствует в ответе? Если нет, вы можете возобновить запрос, используя Range заголовок.

Если сервер действительно не поддерживает его, лучше всего сообщить серверу о том, что вы хотите поддерживать соединение, используя Connection: keep-alive заголовок в сочетании с Keep-Alive заголовок, в котором вы можете указать время ожидания.

Надеюсь это поможет.

Другие вопросы по тегам