NodeJS 中的 Faye Websocket

Faye Websocket in NodeJS

我是 nodeJS 和 faye / websockets 的新手。

用 webix 制作了一个数据表,我想对其进行实时更新。

现在正在尝试与 Faye 一起完成,但不太确定在 faye 向我发送看起来像这样的请求后我应该做什么:

[{"channel":"/meta/handshake","version":"1.0","supportedConnectionTypes":["websocket","eventsource","long-polling","cross-origin-long-polling","callback-polling"],"id":"1"}]

并得到回复:

[{"id":"1","channel":"/meta/handshake","successful":true,"version":"1.0","supportedConnectionTypes":["long-polling","cross-origin-long-polling","callback-polling","websocket","eventsource","in-process"],"clientId":"8bkeysctea7ucerz9h3tyjz0n52s5os","advice":{"reconnect":"retry","interval":0,"timeout":45000}}]

在服务器 (NodeJS) 上,我有以下代码:

var http = require("http"),
    faye = require("faye");


    var server = http.createServer(function (request, response) {
           //Here i have some code for the CRUD operations for the webix Datatable    
    }),
       bayeux = new faye.NodeAdapter({ mount: '/faye', timeout: 45 });

    bayeux.attach(server);
    server.listen(1212, function () {
       console.log("\r\n" + new Date() + "\n -->> HTTP Server listens to Port 1212 <<--\r\n ");
    });

在客户端(JS):

webix.proxy.faye.client = new Faye.Client("//localhost:1212/faye");    
webix.proxy.faye.clientId = webix.uid(); // unique client id
webix.proxy.faye.client.connect();

HTML :

<script type="text/javascript" src="//localhost:1212/faye/client.js"></script>

(从 webix 示例 + faye 示例中获取了很多内容)

也许有人可以向我解释下一步该做什么,或者提供 link 我可以在其中阅读更多关于 Websockets 以及如何使用它们的信息。

感谢您的宝贵时间。

在客户端和服务端配置好faye后,就可以将其作为任何组件的数据源

{
view: "datatable", 
url: "faye->/data", 
save: "faye->/data"
}

注意faye仅用于客户端之间的数据同步,不会加载或保存数据到真实数据库