Просмотр полной версии : Как запретить кеширование XML ??
Вот так подгружаю XML файл:
<mx:HTTPService id="galxml" url="gallery.xml" />
Если в этот файл были внесены правки, то до тех пор пока не будет очищен кеш браузера эти правки не будут видны.
Как запретить кеширование?
или как заставить браузер брать файл XML каждый раз с сервера, а не из кеша?
Спасибо.
fishbounce
16.09.2007, 00:33
url="{'galery.xml' + '?' + Math.random()}"
В php можно изменить заголовки:
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', FALSE);
header('Pragma: no-cache');
тогда кешироваться совсем не будет.
Вместо рандома лучше юзать new Date() (вдруг рандом повторится).
Страницы с рандомом/датой кешируется.
По этому поводу в нете статья.
fishbounce
19.09.2007, 12:38
да, точно, лучше использовать new Date().
то, что будет кэшироваться, это понятно.
но был и такой вариант вопроса:
> или как заставить браузер брать файл XML каждый раз с сервера, а не из кеша?
имхо, способ с ?somestring надежнее и проще прописывания заголовков. т.к. разные браузеры понимают заголовки по разному (нужно все время об этом вспоминать). а, во-вторых, если человек пишет только клиент, то ? в запросе поставить дешевле:) а то, что кэш будет забиваться - фиг с ним, на то он и кэш:)
согласен.
В статье указано, что 4х заголовков достаточно почти для всех браузеров, в т.ч. старых.
Есть Уточняющий вопрос!
Если я гружу xml через флеш
LOGO_XML.load('JPG.xml' + '?' + Math.random());
то мне выдает ошибку...
Надо точно так же брать не кешированный xml а с сервера
infeligo
27.04.2008, 14:56
Есть Уточняющий вопрос!
Если я гружу xml через флеш
LOGO_XML.load('JPG.xml' + '?' + Math.random());
то мне выдает ошибку...
Надо точно так же брать не кешированный xml а с сервера
А ты через сервер проверяешь?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.