Создание локального приложения Javascript (запускается в браузере)? - PullRequest
11 голосов
/ 29 января 2011

Я хотел бы написать приложение, которое будет использовать как Javascript, так и HTML для пользовательского интерфейса. Приложению не требуется подключение к Интернету, но необходим доступ к локальным файлам пользователя.

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

Моя вторая мысль состояла в том, чтобы попытаться использовать webkit непосредственно из C ++ и использовать Python вместо Javascript, но это кажется довольно сложным, и я чувствую, что использую Qt.

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

Любые предложения о том, что я должен делать?

Ответы [ 7 ]

6 голосов
/ 29 января 2011

Я признаю, что очень мало знаю об этом, но, похоже, то, что вы ищете, это то, что XUL предоставляет.

С домашней страницы:

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

...

Веб-разработчики, уже знакомые с динамическим HTML (DHTML), быстро изучат XUL и смогут сразу приступить к созданию приложений.

Относительно доступа к файловой системе: https://developer.mozilla.org/en/Code_snippets/File_I//O

В этой статье описывается ввод / вывод локальных файлов в chrome JavaScript.

Доступ к файловой системе осуществляется с помощью компонентов Mozilla XPCOM. Список ресурсов и интерфейсов для локального ввода-вывода доступен как для файлов, так и для потоков на XUL Planet.

Из-за отсутствия знакомства я оставляю на усмотрение сообщества решение, имеет ли этот ответ смысл.

РЕДАКТИРОВАТЬ: Создание этого ответа в вики сообщества, так как у меня нет много реальной информации, чтобы предложить.

2 голосов
/ 07 июля 2016

Кажется, через 5 лет после того, как вопрос был задан, существует платформа, которая делает именно это: создает кроссплатформенное настольное приложение с JavaScript, HTML и CSS и с доступом к локальным файлам http://electron.atom.io/.

Я сам этим не пользовался, , но рекомендуется в других ответах .

1 голос
/ 29 января 2011

Если вы не являетесь пользователем Microsoft и / или не возражаете против привязки к IE, еще одним вариантом может быть Приложение гипертекстового терминала (HTA). Однажды (давно) я создал полное и довольно большое автономное приложение-базу данных, используя HTA.

1 голос
/ 29 января 2011

Вы можете - например - использовать Cappuccino : он позволяет создавать приложения в Objective-J (языке, написанном на JavaScript) и запускать их либо в браузере, либо как настольное приложение с локальным доступом к файлу .

Затем есть Adobe AIR, который позволяет писать приложения на JavaScript / HTML и получать доступ к файловой системе .

Или вы можете использовать новый API доступа к файлам: http://hacks.mozilla.org/2009/12/w3c-fileapi-in-firefox-3-6/ (хотя он имеет большие ограничения: Файловый API HTML 5 )

JavaScript - прекрасный язык! Пожалуйста, обновите этот вопрос, указав информацию о выбранном вами маршруте.

1 голос
/ 29 января 2011

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

Я использовал Server2Go и MAMP

0 голосов
/ 10 декабря 2011

Mozilla в настоящее время разрабатывает Chromeless , который, похоже, способен делать именно то, что вам нужно, и имеет доступ к файловой системе

0 голосов
/ 29 января 2011

Знаете ли вы PHP? Я предлагаю вам установить Wamp или phpTriad или что-то подобное для Windows. Таким образом, вы можете добраться до локальных файлов. Если это Linux, большинство операционных систем на * nix имеют встроенные Apache и PHP ..

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