我想用socketio创建一个快速应用程序,一个简单的crud应用程序,但实时
socket.on('users:create',function(data){
console.log(data);
salt = cryptom.salt(32);
hash = cryptom.hash(data.pass,salt);
u = new user({ name: data.name,
salt: salt,
hash: hash,
email: data.email,
ci: data.ci,
telf: data.telf,
rif: data.rif,
});
u.save(function (err) {
if(err){
console.log(err);
}else{
user.find({},function(err,user){
io.sockets.emit('users:index',user);
});
}});
})
我想知道这是否正确,如果有效率通过websockets发送所有信息。
答案 0 :(得分:3)
你可以做任何你喜欢的事。 Websockets的开销小于HTTP头,因此在这方面它们是有效的,它们的主要目的是尽可能有效地通过线路发送数据!
如果您问的是关于普通REST API的解决方案是否正确,那么它取决于您要构建的内容。 HTTP REST应用程序是在不需要事件时构建的,并且应用程序不需要实时更改。优点是您可以使用不同的HTTP方法在同一路由上执行不同的任务(即user
上的DELETE方法将删除用户)。
你说你的应用程序是为实时事件而构建的,那么看起来websockets会适合你。这并不重要,因为有两种架构都可以做到这两点。