【问题标题】:How to implement jQuery-like callbacks with socket.io requests?如何使用 socket.io 请求实现类似 jQuery 的回调?
【发布时间】:2015-09-16 03:45:21
【问题描述】:

实现此伪代码的最佳方法是什么? 例如,当您使用 JQuery 发送ajax 请求时,您可以在回调函数中处理接收到的响应数据。

socket.emit(<request data>, function(response_data) { ... });

【问题讨论】:

    标签: javascript jquery callback socket.io


    【解决方案1】:

    在使用 socket.io 时,典型的函数回调范例不一定是处理来自服务器的响应的适当方式。将其视为双向通信。使用事件名称发送消息,然后使用相应的事件处理程序在服务器上进行处理。然后,服务器将带有响应数据的事件发送回客户端。

    例如:

    客户端代码:

    socket.on("ServerSentTime",function(timeData){ //Event Handler For Server Response
       console.log(timeData); 
    });
    
    
    socket.emit("AskServerForTime");     //Event Fired To Server
    

    服务器代码:

    socket.on("AskServerForTime",function() //Event Handler Awaits Client Request
    {
       socket.emit("ServerSentTime", new Date().getTime());
    });
    

    【讨论】:

    • 感谢您的回答,但我已经实现了。我只想制作某种 API 库,它将所有这些 socket.io 交互留在幕后。
    猜你喜欢
    • 2011-12-02
    • 2013-08-01
    • 2012-12-21
    • 1970-01-01
    • 2020-08-24
    • 2019-10-20
    • 1970-01-01
    • 2010-10-14
    • 1970-01-01
    相关资源
    最近更新 更多