Автономный кеш HTML5 загружен, но не обновлен - PullRequest
2 голосов
/ 18 ноября 2011

У меня есть html5 автономное приложение.Я использую файл cache.manifest для запуска обновления кода клиента.В приложении есть несколько файлов javascript, которые перечислены в манифесте.Всякий раз, когда запускается автономное обновление приложения (через изменение манифеста), я записываю события загрузки кэша в журнал консоли.Это позволяет мне видеть, какие файлы загружаются / обновляются.Всякий раз, когда я изменяю файл манифеста, я правильно наблюдаю запись о загрузке для всех файлов javascript, перечисленных в манифесте.

Пока все хорошо.

Большинство файлов javascript обновляются.Я могу увидеть их, загрузив окно инструментов разработчика Chrome (CTRL + ALT + I) и просмотрев ресурсы-> скрипты.Изменения присутствуют.

Однако один файл, кажется, вызывает проблемы.Он указан как загружаемый, но когда я просматриваю содержимое скрипта, он не обновляется.Нет ошибок манифеста, и вся загрузка манифеста и операция обновления кэша завершаются без ошибок.Но этот файл отказывается обновляться.

Кто-нибудь знает, что происходит и как это исправить?

Ответы [ 2 ]

2 голосов
/ 01 декабря 2011

Лучший способ обойти эту проблему - создать версию файлов .js, добавив параметр url, например /Scripts/sample.js?v=1.0.24

Чтобы избежать проблем с кэшированием, просто увеличьте версиюномер при внесении изменений в файл .js.

0 голосов
/ 18 ноября 2011

Я использовал код с добавлением обработчика событий из Учебное пособие по HTML5 Rocks , и теперь оно загружает все изменения, внесенные мной в js или css.

Теперь браузер всегда спрашивает сервер, изменился ли файл.

...