Cache Manifest работает безупречно в Chrome, Safari, но НЕ в мобильном Safari - PullRequest
1 голос
/ 03 марта 2012

Попытка использовать манифест кэша - кажется, что все отлично работает в Chrome и Safari, но не в мобильном Safari.

Я гарантировал, что я придерживался стандартов, изложенных для автономных приложений HTML5:

  1. Добавлен на страницу с одним сайтом, которая загружена

  2. Убедитесь, что MIME-тип манифеста правильный (задан в .htaccess): AddType text / cache-manifest .manifest

  3. Синтаксически правильный манифест (проверено с помощью http://manifest -validator.com / ). На все активы ссылаются с относительными путями (поэтому никаких изменений в протоколе).

Я не получаю ошибок Javascript в Chrome и Safari и записываю связанные события на консоль с помощью этого удобного фрагмента:

function logEvent(event) {
    console.log(event.type);
}

window.applicationCache.addEventListener('checking',logEvent,false);
window.applicationCache.addEventListener('noupdate',logEvent,false);
window.applicationCache.addEventListener('downloading',logEvent,false);
window.applicationCache.addEventListener('cached',logEvent,false);
window.applicationCache.addEventListener('updateready',logEvent,false);
window.applicationCache.addEventListener('obsolete',logEvent,false);
window.applicationCache.addEventListener('error',logEvent,false);

В мобильном Safari, однако, я получаю сообщение об ошибке «Невозможно получить манифест кэша приложения», а также события журнала «проверка» и «ошибка» без других объяснений. Есть идеи?

1 Ответ

2 голосов
/ 09 марта 2012

Неважно ... Оказывается, вы не можете использовать манифест за .htpasswd. Отключение, которое сделало трюк.

...