Cache API не работает на симуляторе Safari ios и на Mac - PullRequest
2 голосов
/ 31 марта 2020

Я пытаюсь использовать следующий фрагмент кода в моем index.html.

<script>
        fetch('index1.js').then(response => {
            caches.open('test-cache').then(cache => {
                cache.put('index1.js', response);
            })
        })
    </script>

У меня есть собственный домен на локальном хосте с именем test-website.com. Когда я захожу на эту страницу через chrome, все хорошо, и index1.js сохраняется в кеше. Теперь я включаю ios Simulator, открываю там сафари и снова запускаю тот же сайт. Я также проверяю этот сайт на ma c safari, но в консоли вот что я получаю:

Необработанный отказ от обещания: ReferenceError: Невозможно найти переменную: caches

Вопрос 1) Почему я получаю эту ошибку?

Вопрос 2) Я проверил совместимость: Cache Storage API и Cache . Первый совместим с ios safari, второй - нет. В чем разница между этими двумя? и может ли это быть причиной того, что он не может найти кеш?

Вопрос 3) Apple поддерживает работника сервиса и должна поддерживать Cache API. Иначе это не имеет смысла. Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...