繁体   English   中英

在Ubuntu上找不到Socket.io.js,但在Windows上

[英]Socket.io.js not found on Ubuntu but is on Windows

我一直在拔头发试图解决这个问题。 我有一个在Windows中可以正常运行的node.js应用程序。 我压缩了所有内容并将其放在我的Linux机器上(Ubuntu 12),并通过npm安装了所有库,但仍然收到404消息,提示找不到我的socket.io.js文件。 我已经尝试过各种解决方案,例如链接到cdn.socket.io脚本,但这只会引发“找不到所需”错误。 我在html中的代码如下:

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

我什至尝试<script src="localhost:4000/socket.io/socket.io.js"></script>

这是我的服务器端:

var express = require('express');
var app = express.createServer();
var io = require('socket.io').listen(app);
...
app.listen(4000);
console.log('server started');

这个问题是相似的,但是答案仅仅是一个更新的表达语义,不应应用于我的代码: 未找到socket.io.js

如果我的理解是正确的,那么脚本路径应该可以工作,因为当socket.io运行时,它应该将请求定向到正确的路由。 我真的不知道我还应该寻找什么修复程序,这可能与Ubuntu中的路径有关吗? 任何帮助将不胜感激!

刚刚测试了一下:

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

进入localhost:8000并显示“ welcome to socket.io”消息,所以我知道它正在运行。

路径
node_modules: /home/alex/node_modules/socket.io
我的节点应用程序: /home/alex/documents/project/app.js

我遇到了同样的问题,似乎原因是在安装socket.io时出了点问题。 实际上,我发现的唯一解决方法是创建一个新目录,在其中复制所有代码,然后重新安装Express和socket.io模块:
npm安装express socket.io
也许我很幸运,但是确实有效!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM