댓글 : 웹 페이지를 열면로드 후 네트워크가 갑자기 연결이 끊어지면 새로 고침 후 페이지가 사라집니다. 이 상황이 발생하는 것을 어떻게 막을 수 있습니까? HTML5의 출현으로 갑자기 깨달았으며 다음에 자세히 설명하겠습니다.
웹 페이지를 열면로드 후 네트워크가 갑자기 분리되면 새로 고침 후 페이지가 사라집니다.페이지를 새로 고치면 지금 페이지가 될 것이라고 생각한 적이 있습니까? 새 창에서 다른 페이지를 열고 동일한 URL을 입력 한 다음 네트워크를 벗어난 경우 페이지를 열 것이라고 생각한 적이 있습니까? . HTML5 오프라인 응용 프로그램은 이러한 기능을 제공하고 있습니다.
페이지의 데이터가로드되면 일부 이미지, Flash, CSS, JS, HTML 및 기타 파일을 직접 캐시 할 수 있습니다. 다음에 페이지의 데이터가 인터넷에 연결되지 않으면 해당 캐시 파일을 사용할 수 있습니다. 이것은 HTML5의 오프라인 응용 프로그램입니다.
실제로 구현하기가 매우 간단합니다.
서버가 필요합니다. 여기서 우리는 Tomcat 서버를 사용하여 설명합니다.
먼저, .manifest 접미사로 텍스트/캐시 매니페스트로 파일의 광산 유형을 구성하십시오.
Tomcat 구성에 대해 이야기 할 때 친숙한 친구는 당연히 Web.xml 파일을 생각합니다. 예, 파일에 다음 구성을 추가하십시오.
<마임 맵핑>
<Extension> 매니페스트 </extension>
<mime-type> Text/Cache-Manifest </mime-type>
</mime 맵핑>
그런 다음 xxx.manifest 파일을 작성하십시오. xxx는 자신이 선택한 이름입니다. 이 파일의 형식은 다음과 같습니다.
캐시가 나타납니다
#version 1.5
은닉처:
mytest.html
CSS/Main.CSS
JavaScript/bwh5ls.js
exp-calif-logo.gif
첫 번째 줄은 필요하며,이를 식별하는 것은 Manifest의 구성 파일입니다.
#version 1.5
이 문장은 의견이며 실제적인 영향은 없습니다. 브라우저가 여기에서 캐시 파일을 업데이트하기를 원합니다. 매니페스트 파일이 이전과 동일 할 때 브라우저는 캐시 파일을 다시로드하지 않으므로이 주석을 사용하여 한편으로는 버전 번호를 수정하고 브라우저가 캐시를 업데이트하도록 할 수 있습니다.
은닉처:
이 줄은 다음 파일이 캐시되어야 함을 나타냅니다. 예에서는 현재 페이지 : MyTest.html 및 일부 CSS 및 JS 파일 및 사진이 캐시됩니다.
예제에는 언급되지 않은 몇 가지 키워드가 있습니다.
회로망:
폴백 :
네트워크는 캐시를 원하지 않는 페이지를 말합니다. 요청 된 파일을 찾지 못하거나 파일의 서버가 응답하지 않을 때 폴백은 대안을 나타냅니다. 예를 들어, 중첩 페이지를 요청하려고하지만이 페이지의 서버는 연결할 수 없으므로 지정된 다른 페이지로 전환 할 수 있습니다.
이것은 두 번째 단계이자 세 번째 단계입니다. <html> 태그에 매니페스트 위치를 추가하십시오.
<html manifest = name.manifest>
이 시점에서 간단한 오프라인 응용 프로그램을 실현할 수 있습니다.
캐시 된 파일은 어디에 배치됩니까?
Chrome에서 테스트 한 후 자체 메커니즘에 따라 이러한 파일을 청크로 저장하여 전체 파일을 찾을 수 없었습니다. 저장된 데이터는 다음과 같습니다.
C :/Users/Jasonling/AppData/Local/Google/Chrome/사용자 데이터/기본에서 저장하는 방법을 모르겠습니다.
Firefox의 파일은 자체 메커니즘에 따라 저장되지만 SQLITE로 열린 후 캐시 된 파일의 특정 정보를 찾았습니다.
독자가 관심이 있다면 새로운 발견이 있는지 확인하기 위해 스스로 시도 할 수 있습니다.