динамическая загрузка картинки + кеширование
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
динамическая загрузка картинки + кеширование - 2011-04-08 15:23:44.430000
|
|
|
furiousangel
Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
|
Добрый день. На своем сайте надо отображать диаграмму производительности линии производства. Использую родную GD2. Вначале генерируется картинка затем с помощью jQuery ajax-ом подгружается код типа quote:
<img src="/images/ganerated_pic.png"> Проблема в том, что картинка не обновляется при повторной загрузке через ajax, только при полном обновлении страници что неюзабельно. Выкрутился динамической генерацией имени файла-картинки, но недостаток - огромное количество генерируемых файлов. Можно конечно кроном за собой подчищать. Но должно же быть какое-то более изящное решение. Я подозреваю там должно быть связано с last-modified. Кто сталкивался подскажите как генерировать все в один файл и заставлять браузер обновлять картинку.
|
|
|
RE: динамическая загрузка картинки + кеширование - 2011-04-08 16:15:36.866666
|
|
|
Space Asshole
Сообщений: 21
Оценки: 0
Присоединился: 2011-04-08 13:42:18.593333
|
Это скорее проблема браузера, чем скрипта. Браузеры взяли нехорошую моду показывать кешированное изображение по имени, а не по сумме файла. Конечно, выход из ситуации — динамическое имя. Как вариант, после имени файла добавить обычный счётчик. Пусть скрипт генерирует картинку с новым именем, а со старым сразу же стирает. Либо можно рисовать графики не картинками, а яваскриптом. Тем более что с введением в бой HTML5 нам стал доступен такой замечательный компонент, как <CANVAS> Вот, например, один из множества плагинов для jQuery: http://plugins.jquery.com/project/graphTable
|
|
|
RE: динамическая загрузка картинки + кеширование - 2011-04-08 18:29:54.010000
|
|
|
furiousangel
Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
|
Ну возможно со временем так и будет, а пока заказчик ругается, надо все быстро исправлять. Просто когда я ставил удаление файла сразу после подгрузки, то нифига не подгружалось ссылаясь на то, что файла нету (видимо удалился). При чем искусственные задержки никак не спасают. Видимо придется так и юзать динамическую генерацию имен файла в связке с заданием крона(((
|
|
|
RE: динамическая загрузка картинки + кеширование - 2011-04-08 20:49:54.253333
|
|
|
slipslop
Сообщений: 115
Оценки: 0
Присоединился: 2010-12-27 20:21:35.253333
|
Стандартный вариант избавления от кеширования - добавление к URL штампа времени. Т.е. вместо /images/ganerated_pic.png писать что-то вроде /images/ganerated_pic.png?time=432349875. Технически получается, что обращение идёт к одному и тому же URL, но с разными параметрами - такие запросы браузер, естественно, не кеширует. Правда, он может просечь, что это картинка, тогда придётся выкручиваться: если браузер проверяет расширение файла, то придётся отдавать картинки через код, а не напрямую, убирая при этом расширение; если браузер проверяет тег img, то можно генерировать этот элемент динамически.
|
|
|
RE: динамическая загрузка картинки + кеширование - 2011-04-11 15:56:39.906666
|
|
|
furiousangel
Сообщений: 1116
Оценки: 0
Присоединился: 2005-05-28 06:31:47
|
Дружище спасибо!!!! Была б у меня щас репа ты бы попал под очередь плюсомета))) /images/ganerated_pic.png?432349875 Вот такая ерунда на ура работает. И картинки не засирают директорию.
|
|
|
|
|