我有一个角度应用程序需要订阅websocket以获取传入数据。
在角度方面,我有一项服务
setContextChannel(channel) {
this.contextWS = new WebSocket(channel);
that = this;
this.contextWS.onmessage = function(event) {
console.log('ws', event.data);
that.patientID = event.data;
};
this.contextWS.onerror = function(event) {
console.log('ws error', event);
}
}
在模拟服务器端,我有一个打字机节点服务器,它按如下方式创建套接字:
import {Server} from "ws";
var wsServer: Server = new Server({port: 8085});
console.log('ws on 8085');
wsServer.on('connection',websocket => websocket.send('first pushed message'));//////
我的问题是如何使用wsServer发送消息?
答案 0 :(得分:1)
我不确定你在问什么。这条线是正确的:
wsServer.on('connection',websocket => websocket.send('first pushed message'));
如果要继续向所有连接的客户端发送消息,则需要使用属性wsServer.clients向每个连接的客户端发送消息,或者将引用存储到每个连接的客户端(websocket
变量in您的代码)在数组中,然后使用forEach()将消息发送到每个客户端。