套接字编程MEAN堆栈,端口3000上的Express应用程序和8000

时间:2017-03-20 12:17:15

标签: angularjs node.js sockets express amazon-ec2

我正在尝试使用MEAN堆栈和socket.io创建套接字应用程序。我想在一个端口(比如3000)和另一个端口上的Angular app(比如8000)上设置我的Express应用程序。

稍后我将尝试在S3上的EC2和Angular应用程序上移动我的Express。

这种设置是否可行?

我找到了许多示例,其中前端(Angular app)由Express提供服务。

app.get('/', function(req, res){
  res.sendFile(__dirname + '/index.html');
 });

但我不想要这个,我想要一个能够使用套接字连接到后端(Express)的独立前端。

1 个答案:

答案 0 :(得分:1)

是的,这种设置是完全可能的。

您只需要创建一个websocket服务器(例如使用Socket.io),并将其附加到您的快速服务器上。

另一方面,在Angular中,连接到这个websocket服务器。 例如,使用angular-websocket

var wsUrl = 'ws://yourdomain.com:[YOUR_EXPRESS_APP_PORT]/';
var dataStream = $websocket(wsUrl);
dataStream.onMessage(function(message) {
    // do something here
});