У нас есть система, которая использует Firefox в качестве клиента для веб-приложения. Веб-страница использует Dojo Ajax для выполнения POST-запроса сервлета, выполняющего длительный процесс. Проблема в том, что когда запрос превышает 15 минут (на основе наблюдения), один и тот же Http-запрос (те же параметры) неоднократно выполняется браузером. Повторный запрос принимается каждые 1 минуту 20 секунд после этого.
11:00:00 First Request
11:15:00 Repeat Request
11:16:20 Repeat Request
11:17:40 Repeat Request
11:19:00 Repeat Request
11:20:20 Repeat Request
У меня вопрос, есть ли настройка в конфигурации Firefox или даже в части сервлета, которая может предотвратить повторный запрос? Это локальная система, поэтому я могу контролировать настройки браузера.
Примечание: я знаю, что решение этой проблемы состоит в том, чтобы выполнить длинный процесс в потоке и неоднократно опрашивать поток через javascript, но мой босс хочет более легкого исправления, если это возможно, через настройки в firefox.
Добавлено на основе комментария:
Используемый код является API-интерфейсом dojo dox.xhrPost для выполнения запроса. Я не уверен, что именно API-интерфейс dojo выполняет перепост. Помощь от эксперта по додзё.
Добавлен источник на основе комментария Джереми:
dojo.xhrPost(
{
url: servlet,
content: {
jobName: 'DoLongProcess',
FUNCTIONNO: dojo.byId('hdFunctionNo').value
},
handleAs: handleAs,
handle: function(response) {
cursorStyle(cursor_style_auto);
}
}
);
Я использую версию dojo 1.3.1 Rev: 17468. К сожалению, я не могу изменить dojo на более высокую версию, так как для этого потребуется регрессионный тест для всех функций.