Когда браузер устанавливает новое соединение для запросов ajax? - PullRequest
0 голосов
/ 13 февраля 2012

Я заметил, что для некоторых из моего ajax-запроса используется дополнительное время для подключения, оно почти достигает 1 с, что делает запрос медленным. Как только запрос сделан, последующий запрос не требует времени для установления соединения. Но если Я оставляю его без присмотра на некоторое время, снова оно устанавливает новое соединение. Я не могу понять, в каком состоянии браузер устанавливает новое соединение. Я проверил на других сайтах (gmail, stackoverflow), чтобы убедиться, что их ajax-запросы тоже делают начальные Соединение, но не смог найти. Есть ли способ избежать установления этого соединения?

1 Ответ

0 голосов
/ 13 февраля 2012

Я думаю, вам следует увеличить тайм-ауты вашего запроса AJAX, чтобы ваши XHR оставались живыми в течение большего времени. Также попробуйте использовать те же объекты XHR (после очистки), когда вы хотите повторно подключиться к серверу для той же службы /resource.However несколько раз, если браузер находит запрошенные данные в кеше, он может избежать запроса сервера снова для того же.Также еще одна причина может заключаться в том, что каждый раз, когда ваш URL изменяется без необходимости, так что браузер вынужден запрашивать сервер (не очень уверен в этом).

ОБНОВЛЕНИЕ

var xhr;
xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.timeout = 10000;
xhr.ontimeout = timeoutFired;
xhr.send(null);

Подробнее см. , и , .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...