@volcanocoder

Существуют ли решения для разработки HTML5 + JS offline-приложения, использующего распространяемую в виде файла базу данных?

Для работы в том числе в оффлайне нужно сделать HTML5+JS приложение, при этом движок рендеринга и js взять, допустим, хромовский, а для снятия ограничений режима браузера (в основном касающихся доступа к файловой системе) использовать что-то... не знаю, допустим, NodeJS. И существенное требование - поскольку вместе с приложением должна будет распространяться и база данных, нужна поддержка работы с чем-то типа sqlite. В качестве примера могу привести, допустим, то, как выглядит история в Хроме. В поле "Искать в истории" вводите ваш запрос, и он каким-то образом, используя некий файл, хранящийся на диске, находит все страницы, содержавшие этот запрос, окружая сам текст запроса неким контекстом, и сортируя по дате. Вот я примерно такое же приложение хочу делать. (Правда, в Хромовской истории постраничной навигации нет, вместо нее торчит убогая ссылка "Раньше", но это уже другое дело.)
Вроде есть Node-webkit, но там нет такого типа поддержки работы с базами данных. Выбор баз данных небольшой. В документации к NeDB сказано, что она будет хранить базу данных в памяти (мне это не нужно), типа 20 МБ для 10000 документов по 2 КБ каждый. Но ведь в хромовской базе данных каждая страница была в среднем, допустим, по 50 КБ, и их многие тысячи могут быть, и никакой существенной памяти у системы его поиск не отъедает!
И что делать, есть какие-то существующие решения для данной задачи?
  • Вопрос задан
  • 4089 просмотров
Пригласить эксперта
Ответы на вопрос 2
Application Cache + LocalStorage
Ответ написан
BuranLcme
@BuranLcme
node-webkit не поддерживает IndexedDB? Обычный Хром поддерживает. Если поддерживает, то вопрос к необходимым объемам БД.

Хотя про node.js не понял. Пользователь должен будет поставить и приложение на базе node-webkit и node.js? тогда уж заодно и mongoDB, или что-то наподобие, поставьте. NodeJS отлично с ним дружит.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы