【发布时间】:2017-01-30 10:13:21
【问题描述】:
嘿,我是 socket 和 node 的新手,正在使用 socket.io 进行聊天。
这是我的 index.js 文件:
var app = require('express')();
var http = require('http').Server(app);
app.get('/', function(req, res) {
//route handler serve index.html file
res.sendFile(__dirname + '/index.html');
});
io.on('connection', function(socket) {
console.log('A user has connected');
socket.on('disconnect', function() {
console.log("A user has disconnected");
})
})
http.listen(3000, function() {
console.log('listening on port 3000');
});
**这是我的 index.html:**
<html>
<head>
<title> Chat </title>
<script src="https://cdn.socket.io/socket.io-1.0.0.js"></script>
<script>
var socket = io();
</script>
</head>
<body>
<ul id="messages"></ul>
<form action="">
<input id="m" autocomplete="off"/> <button> Send </button>
</form>
</body>
我不断收到一个引用错误,说 io 未定义。我尝试将套接字链接为 cdn 和我的服务器 url。
【问题讨论】:
-
服务器上也需要 socket.io。尝试安装socket-io并添加以下代码
var io = require('socket.io')(app);. -
@HimaniAgrawal 谢谢,这工作!
标签: node.js sockets express io referenceerror