这可能是显而易见的,但我已经研究了 3 个多小时了,但我无法找出问题所在。我只想制作一个简单的网页,可以与服务器端代码进行通信。我有所有库的最新版本。我的服务器端代码是://import libariesglobal.express = require('express');global.http = require('http');global.socketio = require('socket.io');global.app = express();global.server = http.createServer(app);global.io = socketio(server);//serve filesapp.use(express.static('public'));//start listeningapp.listen(80, () => { console.log('listening...');});//socketio.on('connection', (socket) => { console.log('a user connected');});我的客户端代码如下所示:<script src="/socket.io/socket.io.js"></script><script> let socket = io();</script><script src="sketch.js"></script>这应该可行,但我每次都会收到此错误(在客户端控制台中):GET http://localhost/socket.io/socket.io.js net::ERR_ABORTED 404 (Not Found)我知道有很多这样的问题,但它们通常已经过时了。PS:如果我移除插座部分,表达功能正常。
1 回答
PIPIONE
TA贡献1829条经验 获得超9个赞
好吧,看来您正在创建自己的 http 服务器,然后将 socket.io 附加到它。但是,您不再听所述服务器,而是听 Express。要么做
server.listen(80, () => { console.log('listening...'); });
或者只是使用 Express 的服务器
var server = app.listen(80); var io = require('socket.io').listen(server);
另外,如果您正在构建一个简单的网站,您可能根本不需要 socket.io。
添加回答
举报
0/150
提交
取消