Использование одного responseXML над несколькими файлами HTML? - PullRequest
0 голосов
/ 25 февраля 2012

Я собираюсь сделать один запрос XmlHttpRequest (каждые 30 минут - получение прогноза погоды) и использовать ответ XML для нескольких HTML-документов.Я посмотрел близко и далеко и могу получить только разобранный XML для отображения на одном документе.

Есть ли способ ссылаться на разные документы из одной функции JavaScript?

Нет фреймворка, просто прямойJavaScript / AJAX.

forecastXMLreq = new XMLHttpRequest();
forecastXMLreq.open("GET",forecastURL,false);
forecastXMLreq.send(); 
forecastXML = forecastXMLreq.responseXML;
var day1 = forecastXML.getElementsByTagName("weekday_short")[1].childNodes[0].nodeValue;
document.getElementById("day1").innerHTML = day1.toUpperCase();

Несколько файлов html, один запрос XHR - это то, что я ищу

1 Ответ

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

Самый простой способ - использовать регулярное http-кэширование.На следующих страницах вам все еще нужно запросить файл в вашем коде, но браузер может потенциально пропустить запрос и просто автоматически и прозрачно извлечь его из локального дискового кэша.Вам не гарантируется, что он будет кэшироваться в течение полных 30 минут, так как браузер имеет ограниченный объем кеш-памяти и решает, что и когда очищать.

Просто настройте сервер для отправки следующего httpзаголовок для этого xml-ответа

Cache-Control: max-age=1800

дополнительная информация о http-кэшировании http://www.mnot.net/cache_docs/

Альтернативой является использование ограниченной поддержки, которую браузер предлагает для html5 локального хранилища .Конфигурация веб-сервера не требуется, хотя поддержка браузера ограничена, и вам не нужно повторно запрашивать файл в коде, но опять же у вас будет другой код для извлечения его из локального хранилища.

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