const WebSocket = require('ws')
const WebSocketServer = WebSocket.Server;
//在4000端口上打开了一个WebSocket Server,该实例由变量wss引用。
const wss =new WebSocketServer({
port:4000
})
//如果有WebSocket请求接入,wss对象可以响应connection事件来处理这个WebSocket:
wss.on('connection',function(ws){ //在connection事件中,回调函数会传入一个WebSocket的实例,表示这个WebSocket连接。
console.log(`[SERVER] connection()`);
candleMsg()
ws.on('message',function(message){ //我们通过响应message事件,在收到消息后再返回一个ECHO: xxx的消息给客户端。
console.log(`[SERVER] Received:${message}`);
setInterval(()=>{
// ws.send(`ECHO:${message}` ,(err)=>{
// if(err){
// console.log(`[SERVER] error:${err}`);
// }
// })
ws.send(candleMsg(), (err)=>console.log(err))
} , 2000)
})
})
const candleJson = require("./data/candle_stick.json");
const Low = 600
const High = 2000
const candleMsg = () => {
let data = candleJson.data
data.high = getRandom()
let low = getRandom()
data.low = low > data.high ? data.high : low
return JSON.stringify(candleJson)
}
const getRandom = ()=> Math.random() * (High - Low) + Low
/// 首先执行 npm install ws --save
/// 然后执行 node index.js 启动服务器,服务器启动后控制台没有任何输出
/// 连接成功后要先向服务器 发送一个消息后才会推送数据
http://oktools.net/websocket
ws://localhost:4000
网友评论