我有一个简单的问题,我认为我在服务器中使用 socket.emit 向客户端发送了一条消息,那么我如何检查用户是否真的收到了消息,socket io 或 Node 是否有任何内置系统
,我知道我可以将 ping 用户与 socket.emit 一起使用,然后用户发回收到服务器消息的响应,但我需要知道套接字 io 在系统中是否有这样的构建?
谢谢。
最佳答案
是的,您可以通过将函数作为最后一个参数传递给 .emit
来实现这一点。
来自 socket.io 的“发送和获取数据(确认)”部分的示例:
服务器:
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket) {
socket.on('ferret', function (name, fn) {
fn('woot');
});
});
客户:
<script>
var socket = io.connect();
socket.on('connect', function () {
socket.emit('ferret', 'tobi', function (data) {
console.log(data); // data will be 'woot'
});
});
</script>
关于node.js - 检查用户是否通过socket io收到消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18001855/