@uroot

Как записать в локальный JSON?

Весь код работает в рамках одной машины
Есть такое мини-приложение: ссылка
Полученные данные:
head = document.getElementById('setHead').value;
    date = document.getElementById('setDate').value;
    autor = document.getElementById('setAutor').value;
    text = document.getElementById('setText').value;
Необходимо дописать в конец JSON-файла, в котором уже есть данные:
spoiler
{
  "1": {
    "title":"My Lesons",
    "autor":"Denis",
    "date":"10.01.18",
    "text":"С момента введения поддержки типа данных JSON в MySQL 5.7.8 не хватает одной вещи: способности индексировать значения JSON. Для того, чтобы обойти это ограничение, можно использовать генерируемые столбцы. Эта возможность, представленная в MySQL 5.7.5, позволяет разработчикам создавать столбцы, содержащие информацию, полученную из других столбцов, предопределенных выражений или вычислений. Генерируя столбец из значений JSON, а затем индексируя его, можно практически индексировать поле с JSON."
  },
  "2": {
    "title":"My Articles",
    "autor":"CryNet",
    "date":"09.01.18",
    "text":"Для того, чтобы обойти это ограничение, можно использовать генерируемые столбцы. Эта возможность, представленная в MySQL 5.7.5, позволяет разработчикам создавать столбцы, содержащие информацию, полученную из других столбцов, предопределенных выражений или вычислений. Генерируя столбец из значений JSON, а затем индексируя его, можно практически индексировать поле с JSON."
  }
...
}

Количество записей в JSON-файле неизвестно. Подскажите как реализовать запись, чтобы не выкачивать все данные из файла в переменную, не пересоздавать файл и т.д.?!
  • Вопрос задан
  • 1019 просмотров
Решения вопроса 2
kotovsky_art
@kotovsky_art
Software Engineer
Из браузера никак. Отошли данные на сервер, который имеет доступ к методам работы с файловой системой.
Ответ написан
@Interface
у вас есть 4 варианта:
- хранить в localStorage (это не JSON файл, но может быть вам подойдет) - вероятно самое простое
- генерировать файл в браузере и предложить пользователю его сохранить (тут можно почитать https://stackoverflow.com/questions/3665115/create...
- запускать не только браузер на своей машине, но и сервер (ну и обрабатывать запросы и т.д.)
- использовать совмещенный браузер с нодой (похоже на 3 вариант). Вам может подойти nw.js или electron

XMLHttpRequest - выполнит только запрос и будет частью решения #3, но само взаимодействие с файловой системой будет делать сервер
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы