我正在尝试使用 express 为与 socket.io 通信的 express 提供静态页面。我不断地遇到问题。我做了很多事情,用谷歌搜索了很多次,我不敢相信我还没有找到具体问题的答案。我一直跑到向您展示服务器或向您展示客户端的地方,而不是与它通信的其他地方。或两者兼而有之,但不是快递。当我将 express 加入混合时,我开始得到 404,我移动我的 socket.io 客户端脚本,但似乎仍然无法让它工作。这就是我现在所处的位置,尽管这是我的第 20 个配置。
服务器:
var express = require('express');
var app = express();
var http = require('http');
var server = http.createServer(app);
var io = require('socket.io').listen(server);
app.configure(function () {
app.use(express.static('html'));
});
app.listen(8080);
io.sockets.on('connection', function (socket) {
console.log('A socket connected!');
});
客户:
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost:8080');
socket.send('testing');
</script>
我尝试将 src 更改为 /html/socket.io.js(并将所有必要的文件从 dist 目录复制到 /html),尝试在 html 目录中创建脚本目录,尝试链接到 socket.io 的 cdn,然后我继续获得404。我知道这是我搞砸的愚蠢和简单的事情,我只是无法为我的生活弄明白。谢谢!
编辑:我现在要做的就是提供 index.html 页面并在看到连接时打印到服务器控制台。