2016-01-04 4 views
0

Я новичок в Node.js и написал чат в Node.js trough socket.io. Это работает хорошо.NodeJS: Сохранить данные из чата

Но меня беспокоит, когда я перезагружаю страницу, все данные чата исчезли. Ящик чата ясен.

Как я могу сохранить все данные? Возможно ли это без регистрации?

+0

Socket.io просто библиотека сокет, без хранения. Вы можете подключить его к базе данных, такой как Redis, MongoDB, MySQL или любой другой. Вам нужно будет зарегистрировать его в той или иной форме, поскольку широковещательные рассылки сокетов являются эфемерными. Вы всегда можете писать в плоский файл, если вам небезразлична скорость/масштабируемость. Однако, если вы хотите использовать последние строки чата, для этого вам понадобится какое-то хранилище. Если вам нужен небольшой контекст, вы можете сохранить файл с последними текстовыми строками x и вытащить самую старую строку, когда вы добавите новую. Однако наилучшим решением является подключение какого-либо хранилища данных –

ответ

1

Что вы ищете - это база данных. Не думайте, что это просто означает базу данных MySQL, так как она также включает в себя файлы XML, текстовые файлы, файлы JSON и многое другое.

Чтобы начать, совет @ Брэндона и узнайте, как добавить каждое сообщение чата в файл. Когда ваша страница перезагружается, повторяйте каждую строку текста или ввода данных и добавьте ее в программу чата.

Вот некоторые полезные ссылки:

How to append to a file in Node?

How to update a value in a json file and save it through node.js

How to parse JSON using Node.js?

https://docs.mongodb.org/getting-started/node/