Я разрабатываю веб-приложение с помощью Node.js и React.
Файл JSON используется для хранения текстовых данных и репозитория для изображений, которые я использую. Он модифицируется Node.js, а данные обрабатываются React.
Я хотел бы знать, как правильно работать с базой данных JSON. Могу ли я хранить файл JSON локально и отображать его с помощью React вне папки src, или я должен хранить файл JSON на сервере (Node.js) и анализировать его в React с помощью запросов? И как?
Спасибо

Начиная с Node v8.9.1, вы можете получить доступ к файлу JSON с помощью простого запроса.
var json = require('/location/of/file/file.json');
Что касается местоположения, придерживайтесь его вне src, потому что он не соблюдается. Я обычно кладу его в корневую папку под названием config.
Файл должен храниться на сервере, поскольку вы используете узел для получения от него данных, и там могут быть конфиденциальные данные.
Опять же, все зависит от вашей ситуации, если вашему веб-приложению требуется бэкэнд для его работы, и это не просто узел использования статического веб-приложения, как указано выше, если это просто статический контент, просто поместите конфигурацию в пользовательский интерфейс (до тех пор, пока поскольку он не содержит конфиденциальных данных).
Мне кажется, что вы делаете статическое приложение (например, блог). Если вы выполняете рендеринг на стороне сервера, вам может просто потребоваться JSON db, а затем гидратировать DOM. В противном случае вы можете открыть конечную точку API и запросить JSON, а React на стороне клиента обработает его. Надеюсь это поможет! ?
Нет, я делаю динамическое приложение. Клиент может изменять данные, и данные отображаются в соответствии с.
Не следует использовать файл JSON напрямую для хранения информации.
Попробуйте использовать какую-нибудь технологию NoSql DB, предназначенную для этого, например MongoDB. Вы можете использовать его как услугу бесплатно на сайте mlab.com для хранения до 500 МБ данных.
Есть много других поставщиков, например mongodb.com/cloud/atlas, от создателей MongoDB.
Да, я понимаю, но мне нужно закончить свой проект очень быстро. У вас есть решение, использующее файл JSON?
Начать работу с mongodb очень быстро. Если вместо этого вы используете файл json, вам придется построить всю свою логику чтения и записи, что займет много времени. MongoDB поставляется со всем этим в своем ядре, и команды, которые вам нужно написать, довольно просты. Поищите что-то вроде «начало работы с узлом mongodb», и вы найдете несколько руководств по сути. Я почти уверен, что меньше чем за один день вы сможете делать то, что хотите.
Здесь вы можете найти действительно простой учебник, показывающий, как реализовать MongoDB в узле с помощью Mongoose, модуля для узла, который манипулирует исходным модулем MongoDB для узла, что упрощает работу: code.tutsplus.com/articles/…
Хорошо, я попробую использовать Mongo для базы данных JSON. Что касается изображений, которые мне нужно сохранить, я думаю, я могу хранить их прямо на моем сервере и отправлять своему клиенту, так как http-запросы? Спасибо
Да, вы можете хранить его на своем сервере, но вы должны хранить его в CDN, например Amazon S3, с помощью модуля узла aws-sdk. Делая это, вы делегируете запросы изображений и передачу данных на сторонний сервер (от Amazon) и освобождаете свой сервер узла от использования ОЗУ / ЦП, чтобы сосредоточиться на ваших основных сервисах. Кроме того, узел работает в однопоточной среде, и все остальные входящие запросы не будут запускаться, пока не будут завершены все текущие запросы, включая передачу изображений.
Да, я пробовал это решение, но я использовал приложение create-response-app, и оно запрещает импорт из-за пределов папки src ...