webSocket是一种新的传输协议,HTML5新增的协议,相较于http协议,webSocket更像是一台对讲机,可以实现实时通信,双向传输,即服务器也可以主动发送请求到前端,打破了以往只能前端发送请求,然后服务器被动响应的传统方式
socket.io是一个node.js平台上的webSocket封装框架,使用难度比较容易 在使用前必须先安装: npm|cnpm i socket.io -D
语法格式:
/*
socket.emit('name', 数据) 发送
socket.on(name,(data)=>{}) 接收
发送的名字是什么接收的名字就是什么,参数的个数也一样
*/
//后端
const http =require("http");
const io = require("socket.io");
let server = http.createServer((req,res)=>{
}).listen(8080);
let wsServer = io.listen(server);
wsServer.on("connection",(socket)=>{
setInterval(()=>{
socket.emit("time",new Date().getTime());
},1000)
})
//前端
//注意:必须在服务器里面成功导入此模块并且成功服务器开启后,方可引入soket.io.js
//本地安装位置:node_modules/socket.io-client\dist\soket.io.js
<script src="http://localhost:8080/socket.io/socket.io.js" charset="utf-8"></script>
<script>
let socket = io.connect("ws://localhost:8080/");
socket.on("time",(data)=>{
console.log(data);
})
</script>