Autor | Zpráva | ||
---|---|---|---|
Lucas Profil * |
#1 · Zasláno: 27. 3. 2008, 13:18:19
Ahojte, potrebujem poradit resp. najst myslienku ako na to:
Za pomoci jQuery mam urobenu svoju kniznicu na pracu s Ajaxom. Vsetko funguje pekne. Robim administraciu fotogalerie: upload, edit, vymazavanie fotiek...atd Toto tiez bezi OK, az na jednu vec, tu je postup: 1) obrazok za pomoci ajaxu uploadnem na server, nasledne zobrazim zoznam fotiek. Novy obrazok sa mi tam zobrazi OK 2) obrazok zeditujem (prepisem novym obrazkom s inou koncovkou), nasledne zobrazim zoznam fotiek. Nova fotka sa zobrazi OK. 3) obrazok zeditujem (prepisem inym obrazkom s ROVNAKOU koncovkou), nasledne zobrazim zoznam fotiek. Tu nastava problem. V zozname sa zobrazuje stale povodny obrazok a nie novy. Novy obrazok sa zobrazi az ked dam refresh browsera (F5). Cize ked na urovni ajaxu vymazem obrazok test.jpg, nahram tam novy test.jpg, tak sa mi v zozname zobrazuje ten stary test.jpg Cize podla mna niekde v Cache pamati je stale zapisany stary obrazok. Existuje nejaka moznost vymazat cache pomocou Javascriptu resp. na urovni Ajaxu ? Skusal som menit aj hlavicky pomocou xhr.setRequestHeader("Cache-Control", "no-cache, must-revalidate"); ale to nepomohlo. Tiez som v PHP suboroch nastavil hlavicky aby sa dokument nezapisoval do Cache... nepomohlo Riesil uz niekto podobny problem ? Alebo nejaky napad na riesenie ? Dakujem. |
||
ah01 Profil |
#2 · Zasláno: 27. 3. 2008, 14:30:32
Nejjednodušší asi bude při změně názvu přidat do adresy obrázku nějaký náhodný argument, např. "test.jpg?rnd=123". Prohlížeč to pak podle adresy bere jako jiný soubor. Typicky se k tomu používá Date.
img.src = "test.jpg?rnd=" + (+ new Date()); |
||
panhuhu Profil |
#3 · Zasláno: 27. 3. 2008, 14:36:48 · Upravil/a: panhuhu
Dát souboru jiné jméno vždy nepomůže. Například IE je schopný to ignorovat. Půl roku dozadu jsem řešil podobný problém s fancyupload. Je tam pár řešení, ale žádné stoprocentní. Ale je možné, že na obrázky to zabere.
|
||
Lucas Profil * |
#4 · Zasláno: 28. 3. 2008, 08:27:34
pomohlo to, dakujem.
|
||
los Profil * |
#5 · Zasláno: 28. 3. 2008, 09:54:55
> Dát souboru jiné jméno vždy nepomůže. Například IE je schopný to ignorovat.
Ale pomôže. IE to určite neignoruje. |
||
Časová prodleva: 1 rok
|
|||
Michael Banzet Profil * |
#6 · Zasláno: 1. 5. 2009, 23:06:02
Co tak zkusit něco, jako hlavičku, "nebrat z kešeně" ;-)
xmlhttp.setRequestHeader("cache-control", "content='no-cache'"); Michael |
||
Časová prodleva: 15 let
|
0