При условии, что возвращается правильный код состояния, проблема в том, что промежуточный прокси-сервер истекает. «Сервер, действуя как шлюз или прокси, не получил своевременный ответ от вышестоящего сервера, указанного в URI». (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.5) Скорее всего, это означает, что у исходного сервера возникла какая-то проблема (т. Е. Требуется много времени для обработки вашего запроса), поэтому он не отвечает быстро.
Возможно, лучшим решением будет переделать ваше серверное приложение, чтобы оно отвечало кодом состояния «303 See Other»; затем ваш клиент может получить данные на более позднем этапе, когда сервер завершит обработку и создаст окончательный результат.
Редактировать. Другая идея заключается в том, чтобы изменить приложение сервера так, чтобы оно отвечало кодом состояния «413 Request Entity Too Large», когда размер объекта запроса слишком велик. Это избавит от ошибки, хотя может сделать ваше приложение менее полезным, если оно сможет обрабатывать только «маленькие» файлы. "
Другие возможные решения:
- Увеличить значение тайм-аута прокси (если оно находится под вашим контролем)
- Сделайте запрос на другой сервер (если есть другой, более быстрый сервер с тем же приложением)
- Сделайте ваш запрос по-другому (если это возможно) так, чтобы вы отправляли меньше данных за раз