我创建了一个带有节点js和HTML5画布的实时协作绘图应用程序 . 我使用SocketIO作为我在服务器和客户端之间进行通信的方式 . 我知道SocketIO使用websockets,如果不支持,它将回退到轮询 . 作为练习,我必须尝试实现另一种沟通方式,例如仅轮询 . 我的问题是,我真的不知道如何将SocketIO代码重写为轮询 . 我知道轮询不是像SocketIO这样的库,但可以通过多种方式实现,比如AJAX .

这是我的服务器socketIO代码:

function connect(socket){
    socket.on('drawing',
        function emit(data) {
            socket.broadcast.emit('drawing', data);
        });
}

socketIO.on('connection', connect);

在我的客户端:

let socket = io();

socket.on('drawing', onDraw);
    socket.emit('drawing', {
    …
});