Cache na straně klienta – JavaScript

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
joe
Člen | 313
+
0
-

Ahoj,
je v Nette možné nějakým způsobem cachovat i JavaScript? Myslím tím výsledky ajaxových požadavků nebo po něm chci až moc? :-)
Dám příklad, na stránce budu mít například nějaký seznam uživatelů a když na nějakého kliknu, objeví se mi nějaké popup okno s podobnými uživateli toho zvoleného. To by znamenalo, že při každém takovém požadavku by se data načítaly znovu nebo se přece jen do cache ukládají? Případně jak takové chování zařídit.

Honza Marek
Člen | 1664
+
0
-

Řekl bych, že se to cachuje, ale nejsem si úplně jist. Kdyžtak si stačí zapnout správné hlavičky pomocí třídy HttpResponse a pohlídat v javascriptovém frameworku, jestli není zapnuté anticachování. jQuery ve výchozím nastavení cache nebrání.

redhead
Člen | 1313
+
0
-

Tohle ovšem Nette neřeší, Nette je PHP framework. Takže cachovat JS nemá v popisu práce.

Tohle ovšem můžeš implementovat sám. Mít nějakou hashmapu (nebo pole), do které ukládat výsledek Ajaxu (nejlépe v podobě JSON) pod nějakým klíčem – ID uživatele nebo jméno_příjmení, co chceš.. Je to na tobě.

Soubor s JS se (podle nastavení prohlížeče) cachuje.

redhead
Člen | 1313
+
0
-

Možná jsem to i špatně pochopil.

Jestli chceš cachovat na straně serveru, tak Nette tohle automaticky neřeší protože nemůže vědět co má cachovat a co ne. Ale zařídit si to můžeš (od příspěvku výše se to liší tím, že vždycky budeš muset ten ajaxový požadavek provést, viz: Nette\Caching)

Editoval redhead (29. 8. 2009 11:00)