/**
* webSocket 服务端
*/
import express from "express";
import { createServer } from "node:http";
import { Server } from "node:http";
const app = express();
const server = createServer(app);
const io = new Server(server);
/**
* socket 客户端
*/
const TcpHOST = "127.0.0.1";
const TcpPORT = 3001;
import net from "net";
const TcpClient = net.createConnection(TcpPORT, TcpHOST);
// websocket 链接事件
io.on("connection", (socket) => {
console.log("收到消息");
socket.on("message", (msg) => {
// 转发socket消息
TcpClient.write(msg)
});
socket.on("disconnec",()=>{
console.log("断开连接")
})
});
// 监听 8800 端口
server.listen(8800, () => {
console.log("服务端开始运行");
});
萌新,之前没写过服务端,需要做一个websocket和socket互相转换的服务。这段是使用socket.io作为websocket的服务端,nodejs的net模块进行socket客户端转发,socket应该没啥问题,websocket服务端不知道为什么一直连接不上。
尝试使用apifox的websocket连接或者再写一个socket.io的websocket客户端连接都不行。
还有就是请教下,socket.io官网文档里的websocket服务端初始化,有只用socket,使用http,使用https,使用express等等,这些初始化方法有什么不同吗?
import { Server } from "node:http";
这个server不应该是socket.io Server吗