Я пытаюсь узнать, как работают веб-сокеты.Я могу получить данные о торговле с сервера веб-сокетов и распечатать их на консоли.Однако я пытаюсь понять, как я могу передать это сообщение на свой сервер веб-сокетов, чтобы я мог отправить его своим клиентам.По сути, я хочу напечатать каждое сообщение в браузере.
"use strict";
const WebSocket = require("ws");
const binanceWS = new WebSocket("wss://stream.binance.com:9443/ws/stratbtc@trade");
binanceWS.on("open", function open() {
console.log("open action");
});
binanceWS.on("message", function incoming(data) {
console.log(data);
});
Теперь этот binanceWS
будет печатать данные, когда получит их.То, что я пытаюсь сделать, это как я могу передать в send
eventlistener моего объекта WebSocket.Server.Как вы можете видеть в примере из https://github.com/websockets/ws сам wss берет объект websocket при наличии соединения.
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
console.log('received: %s', message);
});
ws.send('something');
});
Спасибо!
ПРИМЕЧАНИЕ :Структура, о которой я говорю, такова.По сути, у меня будут потребители веб-сокетов для получения торговых данных.И внутри того же хоста (пока что localhost) будет сервер веб-сокетов.Этот сервер веб-сокетов будет отправлять данные на каждый клиент веб-сокетов.
УСПЕХ : Хорошо, я сделал это, определив потребительский веб-сокет (binanceWS
) message
слушатель при подключении к серверу websocket.Я не уверен, что это хороший способ, хотя
"use strict";
const WebSocket = require("ws");
const binanceWS = new WebSocket("wss://stream.binance.com:9443/ws/stratbtc@trade");
binanceWS.on("open", function open() {
console.log("open action");
});
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
console.log('received: %s', message);
});
binanceWS.on("message", function incoming(data) {
ws.send(data);
});
});