[英]execute javascript from html - node.js
我有一个HTML文件,其中执行js文件。 现在,我想使用Node.js服务器运行它。 我可以看到它在其中写入了html文件(它写了“ hi(:”),但忽略了js文件。
这是“ server.js”文件:
var fs = require('fs');
var http = require('http');
var content;
//read the file
fs.readFile('index.html', function read(err, html) {
if (err)
{
throw err;
}
content = html;
http.createServer(function(request,response)
{
response.writeHead(200,{"Content-Type": "text/html"});
response.write(html);
response.end();
}).listen(8081);
console.log("listening on port 8081");
});
这是“ index.html”文件:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
<script src="script.js"> </script>
<script> </script>
</head>
<body>
<div id="empty">
hi :)
</div>
</body>
</html>
谢谢你的帮助! (:
您已经创建了一个服务器,该服务器使用index.html
的内容响应每个单个请求,因此,当<script>
标记向服务器请求script.js
文件时,服务器会错误地再次将其发送给index.html
。
在您的createServer
处理程序中,您将要查看传入的请求并找出请求所要的文件,并相应地将不同的数据发送回去。
为了更可靠地处理这种情况,您不必为可能要发送的每个文件都具有if
语句,可以对createServer
处理程序使用抽象来自动检测和发送静态文件。 该问题包含几种解决方案,可以帮助您走上正确的道路。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.