HTML5 - Как работать в автономном режиме с удаленными, но кэшированными в манифесте ресурсами? - PullRequest
2 голосов
/ 16 ноября 2011

Манифест HTML5 позволяет указывать абсолютные ссылки на ресурсы, например:

CACHE MANIFEST

http://www.xerox.com/downloads/usa/en/x/xes_3000Series_Brochure.pdf

Журнал консоли Chrome / Safari показывает, что файл кэшируется правильно, так как онуказано в файле манифеста.Но как получить доступ к этому файлу в автономном режиме на iOS / Android?Я поместил ссылку на страницу точно так же, как в манифесте, абсолютный URL, когда я в сети, он открывается, в режиме airplain браузер открывает приложение, но ссылка на pdf не работает, он говорит, что требуется подключение к интернету, вероятно, это логично, так как ссылка абсолютна, но я надеялся, что он сначала проверит манифест.

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

ОБНОВЛЕНИЕ: Я работаю с jQuery Mobile Framework, возможно, это тоже поможет, может, кто-то справился с этим, но я не нашел ничего полезного в этом вопросев документации и официальном форуме.

Ответы [ 2 ]

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

Лучше иметь возможность открыть pdf в браузере и выбрать другой ридер для пользователей, если они этого захотят.После дополнительных испытаний я прихожу к выводу, что то, что вы сказали, неверно, хотя первой мыслью было, что вы правы.Даже если вы задаете относительные URL-адреса в манифесте, тогда, когда вы используете их в ссылках как относительные, результирующий URL-адрес в любом случае становится абсолютным для браузера, учитывая, что приложение кэшируется, но я могу получить прямой доступ к этим файлам.Причина, по которой у меня не было проблем с относительными URL-адресами, заключается в том, что это были изображения небольшого размера, и теперь я имею дело с большими PDF-файлами.Я пришел к выводу, что не имеет значения, какой относительный или абсолютный URL вы используете, вы можете получить доступ к этим файлам, если они кэшированы.Проблема заключается в том, что iPad и iPhone имеют ограничение кэша 5 Мб, если файл манифеста больше, чем запрашиваемое вами устройство для увеличения доступного размера для вашего приложения, но при этом полностью прекращается процесс кэширования.Поэтому я полагаю, что мне нужно посмотреть на обходной путь частичного кэширования на 5 Мб в одной части и динамического манифеста.Так что теперь это стало другим вопросом.Вот Это Да!Я думал, что будет проще, черт pdfs))

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

Вы не можете получить доступ к этому ресурсу напрямую.Файлы AppCached доступны только со страниц, на которых данный манифест указан в теге <html>.

При доступе к PDF вы покидаете исходную страницу, и браузер (правильно) игнорирует манифест.

Просто идея, вы пытались встроить PDF в <iframe>?

...