2014-03-14 2 views
0

우리 사이트의 응용 프로그램 캐시를 제어하기 위해 "manifest.appcache"파일을 사용하고 있습니다. 애플리케이션의 일부는 오프라인에서 액세스 할 수 있어야합니다. 즉, 페이지 중 일부는 HTML 태그의 매니페스트에 대한 참조가 있고 다른 페이지는 그렇지 않습니다.Html 응용 프로그램 캐시 - 비어 있는지 확인하십시오.

캐시가 비어 있는지 (모든 페이지에서) 확인할 수있는 방법이 있습니까?

Page A는 온라인에서만 사용할 수 있으므로 매니페스트는 참조되지 않습니다. 페이지 B는 온라인과 오프라인에서 사용할 수 있으므로 매니페스트가 참조됩니다. 이제 페이지 B가 이미 캐시 된 경우 (캐시가 비어 있지 않은 경우) 페이지 A (온라인 전용)를 확인하려고합니다.

답변

0

캐시가 비어 있는지 또는 캐시에 페이지가 있는지 (응용 프로그램 캐시 포함) 확인할 수있는 방법이 없습니다.

  1. 당신은 캐시에로드 된 사이트를 추적하기 위해 쿠키를 사용할 수 있습니다

    당신이 정말로 그것을 할 필요가있는 경우

    , 당신이 사용할 수있는 두 가지 해결책이 있습니다. 그러면 새로운 문제가 발생합니다 : 사용자가 쿠키를 지우고 응용 프로그램 캐시를 지우지 않으면 어떻게됩니까?

  2. 더 깨끗한 해결책은 IndexedDB 또는 HTML5 FileSystem을 사용하여 콘텐츠를 저장하고 해당 콘텐츠의 래퍼를 캐시하는 것입니다. 래퍼를 처음부터 캐시 할 수 있고 내가 언급 한 API를 사용하여 콘텐츠를 처리 할 수 ​​있습니다 (이 API를 사용했습니다). 이렇게하면 페이지가 캐시에 있는지 여부를 간단히 확인할 수 있습니다.

내 자신의 질문에 대답 죄송

,하지만 난이 시간을 절약 할 수 있기를 바랍니다.

관련 문제