yinxin630 / fiora

An interesting open source chat application. Developed with node.js, mongoDB, socket.io and react
https://fiora.suisuijiang.com
MIT License
6.57k stars 1.31k forks source link

服务端异常崩溃 #435

Closed smyhw closed 3 years ago

smyhw commented 3 years ago

image


咱自己写客户端的时候发现的,咱也不了解nodejs,但是看着源码似乎是当客户端的发sendmessage包里没给callback参数时,就......

yinxin630 commented 3 years ago

发一下调用接口的代码

smyhw commented 3 years ago

大概长这样就会触发

image

如果服务端有异常消息,比如room id不存在之类的,直接就抛error退出了

yinxin630 commented 3 years ago

第三个参数应该是一个 callback 函数, 用于接收 response data. Python 里不清楚是否一样, 你试试吧

smyhw commented 3 years ago

__sio__.emit('sendMessage', {'to': room_id, 'type': 'text', 'content': msg}, callback=cb) 这样写好像就可以了

但是但是,这个问题就是怕有人故意这么整,然后直接把服务端干掉。。。产生这个异常之后,服务端直接退出了

yinxin630 commented 3 years ago

如果用 pm2 运行的话, 会自动重启进程. 稍后我会测试下这种情况, 避免进程挂掉

yinxin630 commented 3 years ago

我测试过了, 这个异常并不会杀死进程, 所以即便没有使用 pm2 值守也是没有问题的.