Express.js与Websockets

8

目前我的应用是基于Expressjs + Angularjs的。我想在现有的http调用之外启动几个双向调用。我查阅了一些websocket聊天教程,但没有一个与expressjs集成。

我需要在新端口上启动websocket连接吗?我如何将我的angularjs与websocket集成?

我可以只创建几个路由和控制器函数,并让其中一些工作双向吗?

1个回答

5

没有什么特别的要求,您可以使用相同的端口来处理Socket.IO和express。

例如,在我的项目中,我会这样做:

var express = require('express');
var io = require('socket.io');

var app = express();

var server = http.createServer(app).listen(SERVER_PORT, function() {
    console.log('Express server listening on port ' + SERVER_PORT);
});

// let socket.IO listen on the server
io = io.listen(server);

io.on('connection', function(socket) { /* handle connection */ });

据我所知,在Socket.IO维基上还有一个使用express的例子。

1
如何在其他文件中使用此“io”连接向套接字客户端发出事件? - libra
@kleinph - 这个方法对 'ws' 包也适用吗? - Karric

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接