Node.js:无法使用socket.io与express一起工作,在脚本文件上获取404s

sdo*_*ble 2 node.js express socket.io

我正在尝试使用express来提供与socket.io通信的静态页面.问题发生后我一直遇到问题.我做了很多事情,并且用Google搜索了很多次,以至于我无法相信我没有找到我的具体问题的答案.我一直跑到显示服务器的地方,或者向客户展示,而不是与客户沟通的其他地方.或者两者兼而有,但不是快递.当我把express放到混合中时,我开始得到404s并且他们移动我的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!');
}); 
Run Code Online (Sandbox Code Playgroud)

客户:

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost:8080');
  socket.send('testing');
</script>
Run Code Online (Sandbox Code Playgroud)

我已经尝试将src更改为/html/socket.io.js(并将所有必需的文件从dist目录复制到/ html),尝试在html目录中创建一个脚本目录,尝试链接到socket.io的cdn,然后我继续得到404s.我知道这是一件愚蠢而简单的事情,我搞砸了,我无法理解我的生活.谢谢!

编辑:我现在要做的就是提供index.html页面,并在看到连接时打印到服务器控制台.

Dav*_*don 8

请看这里的例子.我通过改变app.listen来使用快递3 server.listen.我认为socket.io设置的路由特定于http服务器,不使用快速路由机制.