所以我最近尝试使用套接字io,但是不允许我连接到React JS。在console.log中,它给了我一些奇怪的错误消息。看看下面的代码。我将发布一个React和localhost的图像。
服务器(Express JS):
const app = require("express")();
const bodyParser = require("body-parser");
const cors = require("cors");
const http = require("http").createServer(app);
const io = require("socket.io")(http);
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
io.on("connect", (socket) => {console.log("connected");});
app.listen(5000, () => console.log(`Running on port...`));
最佳答案
您需要添加GET请求可以到达的虚拟路由。
试试这个:
const express = require("express");
const app = express();
const router = express.Router();
const bodyParser = require("body-parser");
const cors = require("cors");
const http = require("http").createServer(app);
const io = require("socket.io")(http);
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
router.get("/", (req, res) => {
res.send({ response: "I am alive" }).status(200);
});
app.use("/socket.io", router);
io.on("connect", (socket) => {
console.log("connected");
});
app.listen(5000, () => console.log(`Running on port...`));
关于javascript - 如何通过Express JS服务器将React JS和Socket IO连接在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66515903/