我一边有一个非常简单的html5游戏。使用我的浏览器直接打开游戏的html文件可以让游戏正常运行。另一方面,我有一个用node.js制作的html服务器,可以正常提供html文本(像< / br>< p>等标签)。
但是,当我告诉服务器将我的游戏显示为引用整个html文件的html文本时,画布无法呈现(尽管标题确实如此)。所以现在我有点迷失在发生的事情上以及为什么我无法将这两件事联系在一起。这是我服务器代码的简化版本:
var http = require('http');
var fs = require('fs');
var index = fs.readFileSync('index.html');
http.createServer(function(req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(index);
res.end()
}).listen(7777);
那么,我在这里做错了什么?这应该正常吗?我错过了什么吗?
好像javascript是以纯文本形式发送的,代码从未真正执行过。
答案 0 :(得分:0)
您的服务器仅提供index.html,因此如果该页面依赖于任何其他资源,它将无法工作,因为对CSS和JS文件的请求将失败。尝试例如这样:
$ npm -g install simplehttpserver
$ simplehttpserver /path/to/your/folder
然后使用浏览器
http://localhost:8000/index.html