Javascript 使用socket.io和express,为什么不';我的io.on(';连接';)方法正在工作
我试图通过以下教程自学socket.io和node.js: 这是本教程结束时编写的代码:Javascript 使用socket.io和express,为什么不';我的io.on(';连接';)方法正在工作,javascript,node.js,express,socket.io,Javascript,Node.js,Express,Socket.io,我试图通过以下教程自学socket.io和node.js: 这是本教程结束时编写的代码: const express = require('express'); const app = express(); const server = require('http').Server(app); const io = require('socket.io')(server); const path = require('path'); const port = process.env.Port |
const express = require('express');
const app = express();
const server = require('http').Server(app);
const io = require('socket.io')(server);
const path = require('path');
const port = process.env.Port || 3000;
app.use(express.static(path.join(__dirname, 'public')));
app.set('view engine', 'ejs');
app.get('/', function(req, res){
res.sendFile(__dirname + '/index.html');
})
server.listen(port, function(){
console.log('Listening on port ' + port);
io.on('connection', function(socket){
console.log('User Connected! :)');
//handle a new message
socket.on('new:message', function(msgObj){
io.emit('new:message', msgObj);
});
//handle a new member joining
socket.on('new:member', function(name){
io.emit('new:member', name);
});
})
});
问题是,似乎io.on('connection'方法没有通过,并且“User connected!”消息没有打印到控制台,但是我的index.html加载得很好(目前只是一个简单的标题)
我能做些什么来解决这个问题
[编辑]
这是index.html
<h1>Hello, World!</h1>
你好,世界!
您可能需要包括客户端套接字。例如,在正在提供服务的html文件中添加以下代码
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
</script>
var socket=io();
在中集成Socket.IO是一个很好的开始。您可能需要包括客户端套接字。例如,在提供服务的html文件中添加以下代码
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
</script>
var socket=io();
在中集成Socket.IO是一个很好的开始。请提供“index.html代码”,正如我在底部所说,这只是一个简单的标题,上面写着“你好,世界!”现在。可能你使用socket.io客户端API的方式不正确,所以最好在index.html中包含javascript。是否有客户端代码可以提供更多帮助?你看过了吗?请提供我在底部说的“index.html代码”,这只是一个简单的标题,上面写着“你好,世界!”现在。可能你使用socket.io客户端API的方式是不正确的,所以最好也在index.html中包含javascript。是否有客户端代码可以提供更多帮助?你看过了吗?就是这样!非常感谢!为了澄清,脚本src到底是什么?加载到浏览器si上的客户端库de:socket.io-client(可以像上面那样或通过导入“socket.io-client”包来实现)就是这样!非常感谢!为了澄清,脚本src到底是什么?在浏览器端加载的客户端库:socket.io-client(可以像上面一样或通过导入“socket.io-client”包来实现)