Доступ к локальным файлам из настольного приложения HTML5 в папке html

HTML5 великолепен, и я могу заменить им свое существующее настольное приложение, но небольшое ограничение безопасности не позволяет мне завершить свою работу. Я планирую создать простое настольное приложение полностью на HTML5, чтобы оно могло работать на любых мобильных и настольных устройствах, поддерживающих HTML-5.

Я знаю о безопасности браузера в локальном файле и о причинах этого, но я не знаю, почему я не смог найти способ предоставить доступ только для чтения к папке в качестве песочницы. Моему приложению не нужно записывать файл или даже читать файл за пределами основной html-папки. Ему нужно прочитать локальный файл точно в той же папке, что и в домене.

Пожалуйста, дайте мне знать:

  1. Можно ли запустить браузер с определенной командой, чтобы заставить его предоставить доступ к локальному файлу, который существует в той же папке HTML? Он не должен отключать все локальные ограничения безопасности, просто предоставляйте HTML-доступ к файлу в той же папке или подпапке.
  2. Это кроссплатформенный метод для сопоставления локальной папки с локальным хостом, который работает на мобильных платформах?
  3. Существует ли какой-либо файл манифеста, который можно поместить в папку, чтобы предоставить доступ для чтения в той же папке HTML?
  4. Есть ли способ предоставить доступ только для чтения к папке в качестве песочницы?

Примечание. Я не хочу использовать стороннее решение, такое как XULRunner, Mozilla Prism, Adobe Air или любое другое стороннее решение. Мне нужно, чтобы решение HTML-5 было кросс-платформенным, если таковое имеется. .

Любая идея приветствуется.


person Mohammad Nikravan    schedule 12.02.2012    source источник


Ответы (2)


Если вам так нужен этот файл, почему бы просто не загрузить его динамически внутри JS-скрипта как объект json.

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

В качестве альтернативы, если вам нужен файловый ввод-вывод, используйте localstorage.

person Cris Stringfellow    schedule 12.02.2012
comment
Да, хорошо ли для загрузки некоторых данных использовать локальное хранилище, встроенный XML, JSON, но ограничения файлов браузера применяются ко многим другим обычным действиям, таким как доступ к DOM из CSS во внешних файлах, загрузка XML, javascript внутри IFRAME и так далее. Мне нужно, чтобы папка рассматривалась как домен с доступом только для чтения, чтобы выполнять обычные действия в подходе HTML. Конечно, для доступа на запись я хочу использовать локальное хранилище, как вы сказали. - person Mohammad Nikravan; 12.02.2012

согласно этого сайта, запуск Chrome из cmd с параметром --allow-file-access-from-files отключит эту функцию безопасности

person Dcoollx    schedule 14.12.2016