猿问

Socket.io 文件丢失?

这可能是显而易见的,但我已经研究了 3 个多小时了,但我无法找出问题所在。我只想制作一个简单的网页,可以与服务器端代码进行通信。我有所有库的最新版本。


我的服务器端代码是:


//import libaries

global.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 files

app.use(express.static('public'));


//start listening

app.listen(80, () => {

    console.log('listening...');

});


//socket

io.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:如果我移除插座部分,表达功能正常。


慕标5832272
浏览 81回答 1
1回答

PIPIONE

好吧,看来您正在创建自己的 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。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答