웹 사이트에서 사용되는 모든 HTML, CSS, JavaScript 및 이미지 파일에서 ApplicationCache 매니페스트 파일을 자동으로 생성하는 방법을 찾으려고합니다.웹 사이트에로드 된 파일을 모두 찾아서 ApplicationCache 매니페스트를 만듭니다.
웹 사이트의 오프라인 사용을 지원해야하기 때문에이 정보가 필요합니다. 좀 더 정확하게는, JavaScript 용 ArcGIS API webapp의 오프라인 사용법.
iOS 지원은 중요한 요구 사항이며 서비스 작업자는 모든 브라우저에서 iOS에서 전혀 지원되지 않기 때문에 ApplicationCache 대신 서비스 작업자를 사용하지 않습니다.
아이디어는 사이트가 완전히로드 된 후 함수를 호출하여 새 매니페스트에 사용할 텍스트를 동적으로 만듭니다. 그런 다음 수동으로 매니페스트 파일에 복사/붙여 넣기하십시오. 사이트의 내용이 변경되고 매니페스트 파일을 업데이트해야하는 경우에만 수행 할 수 있습니다. http://westciv.com/tools/manifestR/ 하지만 두 가지 문제가 있습니다 :
이 도구, ManifestR은 매우 가까운
1가 제대로 CSS 파일에있는 이미지 파일의 URL을 처리하지 않습니다. 예를 들어 url (../ images/myimage.png)을 발견하면 www.mysite.com/과 같이 비표준 링크를 추가하는 대신 매니페스트 파일에 상대 링크 ../images/myimage.png를 직접 추가합니다. images/myimage.png.
2 dojo.require (AMD 모듈)를 통해로드 된 스크립트를 나열하지 않습니다.
비슷한 코드를 사용하여 이러한 문제를 해결하고 파일 목록을 컴파일 할 생각입니다. 이미 # 1을 수정하는 방법을 알고 있지만 # 2를 수정하는 방법을 알 수는 없습니다.
JavaScript를 사용하면로드 된 물마루 태그 (window.scripts 개체에 있음)뿐만 아니라 AMD 모듈을 사용하여로드 한 태그도 웹 사이트에서 사용하는 모든 스크립트 URL 목록을 찾을 수 있습니까?
기본적으로 Chrome이 소스 창에서 웹 사이트에 대해 나를 보여주는 것과 동일한 목록을 컴파일하고 싶습니다.
예 :이 어디서나 사용할 수없는 경우, 어쩌면 내가 그 AMD를 통해로드 된 모든 파일의 트랙을 유지 dojo.require하기 위해 프록시 기능을 만들 수 있다고 생각하고
.
하지만 먼저 여기에서 질문하고 싶습니다. 이미이 작업을 수행하는 스크립트 도구를 놓친 것일까 요? 아니면 내 계획이 좋지 않을까?
덕분에
로드 된 모듈이 모두 필요하다는 것을 알게되었습니다.모듈 – greenkarmic
더 나은, 나는 자원 타이밍 API를 통해로드 된 모든 자원의 목록을 얻을 수있는 것으로 나타났습니다. 먼저 performance.setResourceTimingBufferSize (some_value)로 버퍼 크기를 설정하십시오. 그런 다음 window.performance.getEntriesByType ('resource')을 사용하여 파일 목록을 가져옵니다. 훨씬 더 간단합니다. – greenkarmic