无法获得socket.io.js

Yum*_*ume 14 node.js express socket.io

我实际上正在做一个小项目,我应该用node.js,mongoDB,socket.io和canvas重新创建一个绘图多人游戏.

抽屉像魅力一样工作,服务器似乎也运作良好.我的注册/登录/会话和数据库启动和工作,唯一的问题是socket.io.当用户加入游戏室时,他可以看到抽屉和工具,但没有连接.为什么?浏览器找不到socket.io.js.

我做了什么 :

我验证它是否已安装,它是使用npm install socket.io.我在打开服务器时检查服务器是否正在启动它:在我的控制台中"socket.io started".我检查了我的HTML代码,这里是:

<script type="text/javascript" src="/socket.io/socket.io.js"></script>
Run Code Online (Sandbox Code Playgroud)

根据数十亿教程/开发站点/帮助主题,这应该是有效的.但事实并非如此.打开浏览器的控制台时,我得到了这个:

X GET http://localhost:1337/socket.io/socket.io.js NOT FOUND.
Run Code Online (Sandbox Code Playgroud)

我不知道问题出在哪里,我无法解决这个问题,这让我头疼不已.所以我在这里.

在此先感谢您的帮助!:)

rob*_*lep 50

鉴于评论中的代码,您没有使用正确的变量进行初始化socket.io.

试试这个:

var express = require('express');
var app     = express();
var server  = app.listen(1337);
var io      = require('socket.io').listen(server);
...
Run Code Online (Sandbox Code Playgroud)

因此socket.io,它不应该在Express应用程序实例上"监听",而应该监听app.listen(...)返回的内容(恰好是一个http.Server实例).