我正在开发一个节点js套接字后端,需要向客户端发送新记录。
我的意思是,想象我有一个mysql数据库,并且节点js正在运行,我想发出任何实时插入数据库的新记录,正是那个特定的最后插入记录。
现在我正在使用节点js计时器,这个计时器正在检查数据库并每隔1秒向客户端发送所有记录,我不想要这个。
我搜索了很多,但没有找到这样的东西。谢谢你的任何建议。
之前探索过的一种可能的方法是听Mysql's Binary log,也缩写为binlog。
这是与之相关的两个包:
第二个包有一个详细的文档,可以让您立即开始收听Mysql更新。
最简单的方法是在将记录保存到数据库后立即发出事件
//使用mongodb和节点
let newStudent = new Student(studentToBeRegistered);
newStudent.save().then((data: any) => {
// on success
// emit socket
socket.emit('newRecord', data)
}).catch((err) => {
console.log(err)
});