콘텐츠마케팅
Flash, JavaScript, XML, KML 또는 Google지도의 캐싱 문제 해결
이것은 캐싱 문제에 대한 짧고 달콤한 게시물입니다. 사이트와 브라우저는 리소스를 실제로 최적화하도록 구축되었습니다. 그들은 때때로 그것을 너무 잘 수행하여 최종 결과가 원하는만큼 자주 업데이트하는 대신 동적 웹 사이트를 실제로 손상시킵니다. 오늘 저는 JW 플레이어, XML 파일을 통해 동영상 목록을 가져 오는 Flash 동영상 플레이어입니다.
문제는 우리가 항상 새로운 웨비나와 교육 수업으로 파일을 업데이트한다는 것입니다. 고객이 매일 페이지를 계속 방문하면 캐시 된 버전의 재생 목록을로드하고 실제로 최신 및 가장 멋진 것을 보여주지 않습니다.
결과적으로 나는 해킹해야했다 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에만 유용 할뿐만 아니라 동적으로 변경되는 KML 파일을 처리 할 때 Google지도에도이 기술을 사용했습니다. 임의의 쿼리 문자열을 생성하기 만하면 시스템은 사용자가 방문 할 때마다 (정적) KML 파일을 다시로드합니다. 해킹이지만 본질적으로 캐싱을 전환하는 쉬운 방법입니다. 오프 옵션이없는 이러한 응용 프로그램에서.