Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Загрузка внешнего swf в обход кэша (http://www.flasher.ru/forum/showthread.php?t=158600)

L_Ghost 21.06.2011 16:26

Загрузка внешнего swf в обход кэша
 
Доброго времени суток!
Есть основной модуль, который по мере необходимости грузит внешние swf.
Но вот беде - они кэшируются. А при обновлении этих swf на сайте и попытке загрузки - берутся из кэша (у кого он включен есесно).
Пробовал что-то типа
request=new URLRequest("file.swf?"+String(Math.round(Math.random()*9999)));
Не грузит вообще. Выдаёт ошибку.
Как реализовать в AS3?

kackbip 21.06.2011 16:28

В принципе путь правильный, если конечно файл грузится не с локальной файловой системы.
А вобще лучше дату прибавлять к запросу

spooner 21.06.2011 19:50

Код AS3:

request=new URLRequest("file.swf?rand="+String(Math.round(Math.random()*9999)));


dimarik 21.06.2011 19:55

Достаточно new URLRequest("file.swf?") При первом запросе файла с начала запуска флеш-ролика браузер сделает полноценный запрос с If-Modified-Since и пр.

Ваш подход обладает существенным недостатком: запрошенный файл будет загружаться всегда, даже если он не был модифицирован.

spooner 22.06.2011 11:24

О как. Спасибо, не знал.

Cheburashka 22.06.2011 12:08

Попробуйте сделать так:
В основном модуле прописать версию приложения, например:
Код AS3:

public static const APP_VERSION : String = '0.8';

А при подгрузке доп ресурсов делать такой запрос:
Код AS3:

request=new URLRequest("file.swf?ver="+APP_VERSION);

Таким образом пока вы не поменяете версию главного модуля, допы будут грузиться из кеша, поменяете - загрузятся заново.
Хотя я не знаю подойдет ли этот способ для вашего конкретного случая.

alatar 22.06.2011 12:15

Cheburashka, и каждый раз перекомпилировать приложение, если поменялся модуль? Какой тогда смысл в модулях?

Cheburashka 22.06.2011 12:18

Я же уточнил, если подойдет для конкретного случая.

kackbip 22.06.2011 13:18

Ну версию можно и в конфиг вынести.

alatar 22.06.2011 13:21

Конфиг тоже будет кэшироваться. Не проще ли, как сказал dimarik, один раз нормально настроить сервер и забыть про костыли.


Часовой пояс GMT +4, время: 22:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.