iPhone - HTML5 "манифест кэша" Общий для многих веб-приложений? - PullRequest
3 голосов
/ 10 ноября 2009

Извините за загадочный заголовок.

Я хотел бы знать, можно ли сделать кэшированные файлы из одного веб-приложения iPhone, использующего возможность манифеста HTML5, доступными для другого веб-приложения из того же домена; как в общих библиотеках кода JavaScript или общих логотипов изображений. Кто-нибудь? * * 1003

Спасибо

Грег

Ответы [ 2 ]

3 голосов
/ 26 мая 2010

GeoNomad, localStorage больше для переменных данных, которые будут меняться в течение использования приложения, а не исходной информации о загрузке.

не сегрегация на уровне домена исполнение

Конечно, но есть удобная часть манифеста, которая позволяет вам пересекать эти границы при явном указании.

NETWORK:

# All URLs that start with the following lines

# are whitelisted.

http://example.com/examplepath/

http://www.example.org/otherexamplepath/

С Apple .

В качестве прямого ответа на вопрос, чтобы сделать информацию для нескольких веб-приложений доступной друг другу, просто добавьте одну и ту же информацию в каждый манифест (они не будут перезагружаться, если не обнаружит, что данные изменились.)

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

С WHATWG

0 голосов
/ 12 ноября 2009

Я бы предположил, что если бы вы обращались к одному и тому же URL-адресу, он сначала посмотрел бы в кеше, но не мог сказать с какой-либо правдоподобностью. Почему бы просто не попробовать? Это может потребоваться в манифесте обоих приложений, что может привести к непредсказуемым результатам. Я бы также беспокоился об изменении поведения в новых версиях Safari.

Однако, то, что будет работать, это использовать localStorage. Вы можете сериализовать что угодно и сохранить его в переменных localStorage для использования другими веб-приложениями из того же домена. Единственное ограничение - ± 5 МБ на домен (я думаю).

Что приводит к важному предупреждению:

НЕ ИСПОЛЬЗУЙТЕ одно и то же localStorage.variablename в нескольких веб-приложениях / веб-страницах, если это не требуется, поскольку оба приложения могут изменить значение. Если вы делаете это непреднамеренно, ожидайте, что проблемы поддержки будут тянуть за волосы.

...