PDA

Просмотр полной версии : "HTTPservice".send() не обновляется


Alexandor1984
26.12.2006, 12:39
Такая проблема.
Есть HTTPservice, который обращается к PHP - скрипту, а тот возвращает данные с БД. Когда данные в БД изменились, я нажимаю "HTTPservice".send(), но почемуто результат остается старый. А вот когда полностью перезапускаешь Flex - приложение, то данные обновляются.
Как с этим бороться???

baron27
26.12.2006, 14:29
наверное избавиться от кэширования, ссылаясь на файл как-нибудь

filename.php?p="+Math.round(Math.random()*9999)"

или через Date.

__i
26.12.2006, 16:00
самый простой вариант и надежный с датой

(new Date()).getTime() - время в миллисекундах, 100% ты за 1 мс не успеешь 2 раза пыцнуть кнопку.

правда если ты вдруг решишь всё это в цикле делать ( безумно глупо ) то тогда естественно работать не будет

Alexandor1984
27.12.2006, 16:07
Всем спасобо. Вариант с "(new Date()).getTime()" помог. Очень выручили.
Но почему у HttpService нет метода, который, бы сбрасывал кеш? Все как-то "боком-раком".

__i
27.12.2006, 16:31
Всем спасобо. Вариант с "(new Date()).getTime()" помог. Очень выручили.
Но почему у HttpService нет метода, который, бы сбрасывал кеш? Все как-то "боком-раком".

За кеш отвечает браузер. И флеш не может браузером управлять, на таком уровне как чистка кеша.

Alexandor1984
27.12.2006, 18:17
Я вообще без браузера это запускаю. Просто файлик .swf

etc
27.12.2006, 18:34
Тем не менее, кеш используется от IE.

Nirth
27.12.2006, 20:22
Автору темы устное предупреждение, тема данная обсуждалать не один раз в разделах ActionScript и Общие вопросы, решение одно и тоже.

Следующий раз когда я замечу что вы не воспользовались поиском и не ознакомились с FAQ'ами, устных предупреждений больше не будет.