[英]Node.js : Load .js and .css files included in HTML file without Express/frameworks
如何加载与Node.js一起显示的HTML文件中包含的.js .csv和.css文件? (没有Express等框架)
例如<script src="clock.js"></script>
在Firefox中,它表明页面fs.readFile('./ index.html')正在将clock.js,jquery.js等请求为html文件,这可能是因为response.writeHead是text / html。
有没有办法做:
if file included in index.html = .js
set writeHead to application/javascript
if file included in index.html = .css
set writeHead to text/css
没有预先指定index.html可能包含哪些文件? (例如,如果将来index.html也使用menu.js,则不需要更新node.js脚本)
有没有办法查看index.html正在请求哪些文件,然后修改这些文件的标题(例如.js具有application / javascript)?
这是您要找的东西吗?
var http = require("http");
var fs = require("fs");
var path = require("path");
var server = http.createServer(function(request, response) {
//typically what will happen here is that you will see
//see the request for the page (index.html?) first and
//then the browser's subsequent requests for js, css etc files
var url = request.url;
var file = //do something clever to extract the file name from the url ( url.split("/")?)
var html = fs.readFileSync(file,"utf-8");
//probably want to check the file extension here to determine the Content-Type
response.writeHeader(200, {"Content-Type": "text/html"});
response.write(html);
response.end();
});
server.listen(8081);
console.log("Server is listening");
有点农耕,您可能会遇到布线方面的各种问题-但这是个主意。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.