【发布时间】:2022-06-13 09:03:51
【问题描述】:
我正在尝试将我的 socket.io 服务器与客户端连接,但我没有收到任何关于它是否已连接的消息。 我在前端使用 React.js,在后端使用 node.js、express.js 和 MongoDB。
我不明白是服务器代码有问题还是客户端有问题。 请帮忙:")
socketServer/index.js
const io = require("socket.io")(6000, {
cors: {
origin: "http://localhost:3000",
},
});
io.on("connection", (socket) => {
console.log("user has been connected");
})
socketServer/package.json
{
"name": "socketServer",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "nodemon index.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"cors": "^2.8.5",
"nodemon": "^2.0.16",
"socket.io": "^4.5.1"
}
}
client/Messenger.jsx
import React, { useContext, useEffect, useRef, useState } from 'react'
import { io } from "socket.io-client";
export default function Messenger() {
const [socket, setSocket] = useState(null);
useEffect(() => {
setSocket(io("ws://localhost:6000"));
console.log("tadan tadan", socket);
}, [])
return (
<>
this is messenger
</>
)
}
【问题讨论】: