node.js - 如何使用 socket.io 将响应发送回客户端?

标签 node.js socket.io

我有 socket.emit 从客户端调用到服务器作为响应我希望客户端的文件名没有发生在下面的代码中不确定什么是错误的任何想法,我没有看到任何错误。如何使用 socket.emit 从服务器获取响应?

client.js

 socket.emit('startRecording',function (response) {
            console.log('start recording emit response',response);
        });

server.js

 socket.on('startRecording',function () {
        var response;
        logsRecording(function (filename) {
            response = filename;
            return response;
            //socket.emit('filename',filename);
        });

最佳答案

要确认消息,startRecording 事件的处理程序需要接受确认回调作为参数。然后,您可以使用所需的数据调用它。见 Sending and getting data (acknowledgements)

socket.on('startRecording',function (socket, ackFn) {
    var response;
    logsRecording(function (filename) {
        ackFn(filename);
    });
});

或者,您可以在 client.js 中为您已注释掉的 filename 事件添加一个监听器:

socket.emit('startRecording');
socket.on('filename', function(filename) {
    console.log('Filename received: ' + filename);
});

浏览Get Started: Chat application 可能会有所帮助从标题“Integrating Socket.IO”开始,以更全面地了解 Websocket。

关于node.js - 如何使用 socket.io 将响应发送回客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38506952/

相关文章:

node.js - Socket.IO 版本输出

javascript - 如何在 socket.io 服务器中调用 Node api 响应

node.js - 如何在响应中获取更新的文档

javascript - 定义的函数坚持其未定义的

node.js - ExpressJS 中间件 | req.params 在中间件中不可用?

JavaScript/Node promise : Executing them in sequence

javascript - OpenWhisk - socket.io - 客户端可能吗?

node.js - Chrome 中的 "Unexpected response code: 503"。也许与heroku上的socket.io有关?

node.js - npm 错误!输入在 1 :379680 处意外结束

ios - 如何使用 node.js 和 socket.io 将文件从 iPhone 发送到另一部 iPhone?