Выпраўце праблемы з кэшаваннем з Flash, JavaScript, XML, KML або Google Maps

Depositphotos 27736851 с

Гэта кароткі і мілы пост па праблемах кэшавання. Сайты і браўзэры створаны для рэальнай аптымізацыі рэсурсаў. Яны часам робяць гэта так добра, што канчатковы вынік фактычна парушае ваш дынамічны вэб -сайт, а не абнаўляе яго так часта, як вам хочацца. Сёння я працаваў з JW плэер, прайгравальнік Flash Movie, які збірае спіс фільмаў з дапамогай XML-файла.

Праблема ў тым, што мы заўсёды абнаўляем файл новымі вебінарамі і курсамі навучання. Калі б нашы кліенты працягвалі заходзіць на старонку кожны дзень, яна загружала б кэшаваную версію спісу прайгравання і ніколі не паказвала ім найноўшую і найвялікшую.

У выніку мне давялося ўзламаць Код аб'екта SWF каб кожны раз думаў, што загружае новы спіс прайгравання.

var video = new SWFObject('player.swf','mpl','670','280','9');
var playlist = 'playlist.xml't='+Math.round(1000 * Math.random());
video.addParam('allowscriptaccess','always');
video.addParam('allowfullscreen','true');
video.addParam('flashvars','&file='+playlist+'&playlistsize=350&controlbar=over&playlist=right');
video.write('video');

Тое, як я падмануў прайгравальніка, было шляхам размяшчэння радка запыту ў назве спісу, якая стварала выпадковы лік з дапамогай JavaScript. Незалежна ад таго, хто трапляе на старонку, ён будзе шукаць іншую назву файла, таму плэер кожны раз будзе ўносіць спіс прайгравання свежы.

Гэта не проста зручна для JW Player, я таксама выкарыстаў гэтую тэхніку для Google Maps пры працы з файламі KML, якія дынамічна змяняюцца. Проста стварыце выпадковую радок запыту, і сістэма будзе перазагружаць (дастаткова статычны) KML -файл кожны раз, калі карыстальнік наведвае. Гэта ўзлом, але гэта просты спосаб істотна ператварыць кэшаванне ад у гэтых прыкладаннях, у якіх няма магчымасці.

Адзін каментар

  1. 1

Што вы думаеце?

Гэты сайт выкарыстоўвае Akismet для барацьбы са спамам. Даведайцеся, як дадзеныя апрацоўваюцца каментар.