无法加载套接字.io.js
Can't load socket.io.js
我正在创建一个具有单独服务器和客户端代码(两个不同的 git 存储库)的应用程序。
HTML 只是作为 UI 存在,但它仍然需要加载/socket/socket.io.js
才能与服务器通信。
这是我的 HTML:
<html>
<head>
<script src="/socket/socket.io.js"></script>
<script src="js/myStuff.js"></script>
</head>
<body>
</body>
</html>
当查询到以/c
开头的地址时,服务器会自动将前缀替换为客户端代码目录。所以,网站是这样加载的:localhost:8080/c/index.html
,js/myStuff.js
的请求实际上是/c/js/myStuff.js
的。
这一切的实现方式:
var http = require("http");
var io = require("socket.io");
var fs = require("fs");
var iniparser = require("iniparser");
var config = iniparser.parseSync('./config.ini');
clientPath = config.server.clientPath; // ../../Bla
var handler = function(req, res)
{
if (req.url[1] == "c")
{
req.url = req.url.slice(2, req.url.length); //Cut off the "/c"
url = __dirname + "/" + clientPath + req.url;
}
else
{
url = req.url; //Nothing.
}
fs.readFile (url, function(err, data)
{
if (err)
{
res.writeHead(404);
return res.end("File not found.");
}
res.writeHead(200);
res.end(data);
});
}
var server = http.createServer(handler);
server.listen(8080);
var socket = io.listen(server);
myStuff.js 和 index.html 都可以正确加载,但加载/socket/socket.io.js
存在问题。这非常非常奇怪,因为我甚至不碰地址。
此错误由谷歌浏览器给出:
GET http://localhost:8080/socket/socket.io.js 404 (Not Found)
为什么会发生这种情况,我该如何解决?
看起来好像你在任何地方更改它,所以 Socket.io JavaScript的默认位置是
<script src="/socket.io/socket.io.js"></script>
不是socket/socket.io.js。
相关文章:
- 无法加载套接字.io.js
- 使用 OAuth.io JS 库从LinkedIn获取个人源会给出 403 禁止错误
- 使用 Express 运行 io.js
- 节点.JS - 简单的 Socket.IO 示例不起作用.获取调试 - 提供静态内容/socket.io.js(Mac
- 节点.js /socket.io/socket.io.js 找不到
- 节点.js socket.io.js找不到或未定义 io
- 在节点下使用 htpp 配置 socket.io.js使用 Express 和会话
- NodeJS和Socket.IO如何为Socket.IO.js服务
- 将socket.io/socket.io.js加载到html头中返回"ReferenceError:io未定义
- 错误连接拒绝http://localhost:3000/socket.io/socket.io.js.
- 类型错误:this.io是未定义的套接字.io.js:639
- arangob教程难度:Node.js(io.js)10分钟
- 在nodejs中使用(express[4.13]+socket.io[1.3])找不到socket.io.js
- Socket.io.js not found (node.js + express + socket.io)
- Can't find socket.io.js
- Sails.io.js:订阅记录的子集合
- “socket.io.js”在哪里?文件位于
- 本地服务的拾取者.io JS
- Express.js 'socket.io/socket.io.js 404'
- socket io js delay disconnect emit