使用Node.js+Express+Socket.IO无法建立客户端与服务器连接
Socket.io客户端连接失败,服务器控制台无“a user connected”输出
我跟着YouTube教程开发一款带房间/大厅的简单网页游戏,遇到了问题:客户端尝试连接服务器时,服务器控制台没有输出预期的“a user connected”文本。我已经安装了Node.js、express和socket.io,也查过相关技术文档和社区帖子,但因为对代码理解不足,没找到有效解决方案。
启动流程:在VSCode终端执行node server.js启动服务器,然后用Live Server打开Index.html文件。教程里对应步骤(视频7分24秒处)能看到“a user connected”输出,但我的控制台毫无反应。
版本信息
- Node.js版本:9.6.7
- Express版本:4.18.2
- Socket.io版本:4.7.2
代码文件
Index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.7.2/socket.io.js"></script> <script src="client.js"></script> </body> </html>
client.js
const socket = io('http://localhost:3000');
server.js
const express = require('express') const app = express() const port = 3000 const server = app.listen(port) const io = require('socket.io')(server) app.get('/', (req, res) => { res.send('Hello World!'); }); io.on('connection', (socket) => { console.log('a user connected'); });
内容的提问来源于stack exchange,提问作者HugoKH
相关产品推荐
相关产品推荐

