powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / JS загружает изображение всегда с локального кэша - почему?
7 сообщений из 7, страница 1 из 1
JS загружает изображение всегда с локального кэша - почему?
    #38414365
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем для экономии трафика изображения возвращаю через ПХП. В заголовке возвращаю Last-Modified: со временем файла изображения, затем анализирую параметр при следующем обращении "If-Modified-Since" и если их время одинаково - то возвращаю код 304.
Если изображение загружается в HTML - то все ок. Т.е. первый раз изображение грузится с кодом 200, а затем (если файл не изменился) с кодом 304.
Если же изображение загружается из JS - то в первый раз код 200, а в последующие ВСЕГДА код 200 и сообщение что браузер берет его из локального кэша - т.е. изображение застревает в кэше браузера навечно.
Как заставить JS обращаться к серверу при последующих вызовах а не брать все из локального кэша ???

Вот пример корректной работы из HTML
Код: html
1.
<img src="/pages/list_foto.php?foto=../foto/avtoisgermanii.jpg&size=80"> 



А вот неправильной работы из JS:

Код: javascript
1.
2.
3.
4.
5.
pic1 = new Image();

pic1.src = '/pages/list_foto.php?foto=../foto/avtoisgermanii.jpg&size=200';

//		$('<img src="' + src + '">').appendTo('.full');	
...
Рейтинг: 0 / 0
JS загружает изображение всегда с локального кэша - почему?
    #38414389
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем - для тех кто не понял:

Если IMG в HTML - то браузер действует так: В первый раз запрашивает изображение с сервера и кэширует его, в последующие разы делает запрос на сервер с пар-ром If-Modified-Since, в котором указывает время создания файла из своего кэша и если получает с сервера код 304 - то изображение берется с локального кэша.

Если IMG добавляется из JS - то браузер в первый раз запрашивает изображение с сервера и кэширует его, а в последующие разы на сервер вообще не обращается а ВСЕГДА берет изображение из кэша.

Почему ????????
...
Рейтинг: 0 / 0
JS загружает изображение всегда с локального кэша - почему?
    #38414443
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский...Почему ????????
Потому что это - очень хороший способ экономить траффик.
Если хотите загрузить новую картинку - нажмите Ctrl+F5. А если хотите, чтобы картинка грузилась всегда с сервера, то добавьте в урл картинки какой-то случайный параметр, типа, avtoisgermanii.jpg?size=200&t=<?php echo uniqid(); ?>
...
Рейтинг: 0 / 0
JS загружает изображение всегда с локального кэша - почему?
    #38414449
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский...Почему ????????
Потому что это - очень хороший способ экономить траффик.
Если хотите загрузить новую картинку - нажмите Ctrl+F5. А если хотите, чтобы картинка грузилась всегда с сервера, то добавьте в урл картинки какой-то случайный параметр, типа, avtoisgermanii.jpg?size=200&t=<?php echo uniqid(); ?>
...
Рейтинг: 0 / 0
JS загружает изображение всегда с локального кэша - почему?
    #38414479
Микола Питерский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeМикола Питерский...Почему ????????
Потому что это - очень хороший способ экономить траффик.
Если хотите загрузить новую картинку - нажмите Ctrl+F5. А если хотите, чтобы картинка грузилась всегда с сервера, то добавьте в урл картинки какой-то случайный параметр, типа, avtoisgermanii.jpg?size=200&t=<?php echo uniqid(); ?>

Про случайный параметр я знаю - но тогда изображение каждый раз будет снова грузится с сервера. А мне нужно уменьшить нагрузку сервера - а полноразмерные фотки каждый раз качать туда-сюда шлишком накладно.
А про Ctrl+F5 - это правда вы думаете что у каждого пользователя сети это заложено с рождения с молоком матери? Или про эти волшебные клавиши нужно писать прямо на главной странице сайта: "Если вы увидели что-то не то - то жмякните Ctrl+F5, а лучше их жмякайте каждый раз, когда заходите на наш сайт".

А почему этот "хороший способ экономить траффик" не действует на код HTML а только на вставку его из JS?
...
Рейтинг: 0 / 0
JS загружает изображение всегда с локального кэша - почему?
    #38414678
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский...А почему этот "хороший способ экономить траффик" не действует на код HTML а только на вставку его из JS?
Там он тоже работает. Вы же не показали исходный код страницы целиком. Впрочем, и не надо. Зависит от многих причин.
...
Рейтинг: 0 / 0
JS загружает изображение всегда с локального кэша - почему?
    #38414680
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микола Питерский...А почему этот "хороший способ экономить траффик" не действует на код HTML а только на вставку его из JS?
Там он тоже работает. Вы же не показали исходный код страницы целиком. Впрочем, и не надо. Зависит от многих причин.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / JS загружает изображение всегда с локального кэша - почему?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]