Node.js的socket.io.js找不到或IO没有定义(Node.js socket.io.j

2019-06-24 08:56发布

我试图运行我的FreeBSD服务器上的Node.js应用程式,但我不能让socket.io库与它合作。 我试过,包括:

    <script src="/socket.io/socket.io.js"></script>

这给出了一个404错误,如果我直接链接到文件(即它是在我的public_html文件夹中)我得到的IO没有定义的错误。

提前致谢

Answer 1:

尝试创建具有此一行在它的另一个Node.js应用程式,然后用Node.js的运行

var io = require('socket.io').listen(8000);

然后在浏览器访问http://127.0.0.1:8000 ,你应该得到友好的“欢迎来到socket.io。” 问候。 如果您收到这则socket.io正在运行,并且将服务socket.io.js文件。

我能想到的,可能发生的唯一的另一件事是,你可能不被链接到您的客户端文件的备用端口。 除非你运行的是在端口80上运行的有关快递的socket.io服务器现在创建一个具有socket.io集的脚本源的客户端文件

<script src="http://127.0.0.1:8000/socket.io/socket.io.js"> </script>

这应该连接到端口8000上运行的服务器socket.io并获得socket.io.js文件。



Answer 2:

你的Node.js应用程序仍然必须服务于它 - 它不会自动地提供服务。 你在你的服务器有哪些? 它应该是这样的

var app = require('express').createServer();                                    
var io = require('socket.io').listen(app);

或相似(在listen很重要)。 该位置是不是在磁盘上的实际位置 - socket.io库应该拦截的URL和服务其客户方库,据我所知。



Answer 3:

补充身体分析器之后的情况如下:

, express.static(__dirname + "/public")

因此,像:

var app = module.exports = express.createServer(
  express.bodyParser()
  , express.static(__dirname + "/public")
);


文章来源: Node.js socket.io.js not found or io not defined