![]() |
|
||||||||||
|
|||||
|
Регистрация: Mar 2009
Адрес: 173,0
Сообщений: 376
|
Привет!
На днях занимался обновлением XML файла для флеш сайта, заливаю его на хостинг... и что самое интересное, когда начинал тестировать в броузерах...заметил такую фигню: -в фаерфоксе обновление не отображалось, при этом в интернетэсплорере и опере всё нормально! Чо это за насеомое такое забралось в фаерфокс? Разве такое может быть, что инфа обновлённая не сразу отображается? И почему так? ![]() Спасибо ![]() |
|
|||||
|
Модрон-ветеринар
|
Запросто. Файл берется из кэша, а не с хоста. (Обычно проблемы, когда файл кэшируется в браузере, но и в кэше провайдера тоже случается).
Для преодоления этого добавляйте к URL загружаемого файла в коде динамически меняющийся суффикс. Я, например, для загрузки txt и php файлов использую Да и картинки в проектах с меняющимся контентом тоже гружу с добалением суффикса. Добавлено через 5 минут Кстати, как для раз FireFox: немедленно скачайте и поставьте плагин HttpFox, он сильно облегчит вам жизнь и весьма крут - сразу показывает что и откуда качается - из кэша, с хоста ли, все HTTP заголовки. Когда флешка грузит конфигурационные файлы и файлы данных, так очень удобно смотреть их актуальность - результат "Cache" или "200"... И кстати, не обольщайтесь насчет Ctrl + F5 для рефреша в обход кэша - сама swf-ка может и загрузится гарантированно с с хоста, но одни файлы она может взять из кэша.. другие с хоста.. третьи опять из кэша... Я так маялся долго, не понимая, почему проект на хосте тупит с данными. И только добавление суффикса сразу помогло. Последний раз редактировалось mooncar; 25.08.2009 в 02:01. |
|
|||||
|
Регистрация: Mar 2009
Адрес: 173,0
Сообщений: 376
|
mooncar, я вам очень благодарен за совет... только хотел бы спросить... вкоде чего добавлять этот суфикс?
Вот в моём случае это данные с XML, единственная строка где я упоминаю про файл загрузки-эта: а в XML вот так: <?xml version="1.0" encoding="UTF-8"?> <strings> <English> <greeting>Приветствую Вас, уважаемый посетитель сайта!... |
|
|||||
|
Модрон-ветеринар
|
В любой URL, как я сказал, для предотвращения кэширования, можно добавить динамическую составляющую.
Добавлено через 9 минут Я же делаю так. Поскольку приходится тестировать не сразу на хосте, а этот суффикс помешает работе с файлом локально, в каждый проект, в первом кадре на _root у меня вписывается определение этого суффикса: // узнаем, локально или из инета грузится флеш var loadMode:String = this._url.substr(0, 4); if (loadMode == 'http') { suffix = '?r=' + Math.random(); } else { suffix = ''; } Потом, в любом месте, где нужно загрузить файл, я пишу не чистый URL, а URL файла с суффиксом: или сразу: Таким образом, флешка будет знать, добалять или нет динамически меняющуюся составляющую в URL в зависимости от того, загружена она локально, или с сервера в интернете. Метод дает удобство: Не нужно всякий раз перелопачивать код на предмет добавления Math.rand() к путям и перекомпилировать ее заново, когда флешка подготавливается для заливки на хост. Последний раз редактировалось mooncar; 26.08.2009 в 01:20. |
|
|||||
|
Регистрация: Mar 2009
Адрес: 173,0
Сообщений: 376
|
Огромное спасибо!
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:11. |
|
|
« Предыдущая тема | Следующая тема » |
|
|