Offline Application Cache라................
MANIFEST 적용하는 것에 따라서 많은 버그(?)가 있는거 같다.
(사용자 버그일지도..)
아무튼
MANIFEST가 적용되는 순서는 다음과 같다.
MANIFEST 적용 순서
페이지 로딩
-> 캐쉬 업데이트 확인
-> 캐쉬 업데이트
여기서 문제점..
서버에서 가져온 값을 가지고 설정을 했을 경우!
이게 캐쉬에 들어가기 때문에 매번 업데이트되지 않는다.
로그인에서 문제가 되었는데..
이런 식으로 해결했다.
로그인/로그아웃을 하고
강제로 캐쉬 업데이트 window.applicationCache.update()
window.applicationCache.onupdateready = function (e){
// 업데이트가 완료되고 난 이후에 실행되는 부분을 넣기
}
하지만 캐쉬가 업데이트 되었다고 해서
업데이트된 페이지가 보이는 것은 아니다.
그래서 페이지를 reload() 라던가 해서 다시 페이지를 불러와야 한다.
MANIFEST 문제점 해결방법
페이지 로딩
-> 캐쉬 업데이트 확인
(MANIFEST가 마지막에 불러왔을 당시의 MANIFEST 파일과 한글자라도 바뀐 상태여야 한다.
- 그래야 업데이트 된 상태라고 판단)
-> 캐쉬 업데이트
(하지만 현재 보이는 페이지에는 업데이트된 페이지가 보이지 않는다.)
-> 페이지 재로딩
(새롭게 바뀐 페이지가 보인다.)
암튼...
MANIFEST 뭔가 이상해.. ㅠㅠ
참고 URL
http://www.jefclaes.be/2012/04/visualizing-offline-application-cache.html
http://bluemarble.tistory.com/111