[英]Node.js return a JS file locally
在我的html文件中,我正在使用以下代碼:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
但是,跑步期間我不允許連接到互聯網。 如何使用node js在本地返回此文件。 我已經在本地計算機上下載了該文件“ jquery.min.js”。
我正在嘗試使用此代碼,但是它不起作用。
function callback(data) {
res.writeHead(200, {"Content-Type": "text/html"});
var str = data+"";
res.write(str);
res.end();
}
HTMLtemplate.load("jquery.min.js", callback);
您無法輕松地在如下所示的簡單節點服務器中同時提供網頁和jquery:
var http = require('http');
var server = http.createServer(function (request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.end("Hello World\n");
});
server.listen(8000);
我認為您將需要一些路由器或框架來服務多個http端點和靜態資產。 很多人使用快遞:
甚至像這樣簡單的事情:
https://github.com/creationix/node-router
我想您可以通過執行以下操作來使用裸節點服務器為其中嵌入了jquery的網頁提供服務(這只是偽代碼):
var http = require('http');
var fs = require('fs');
var html = "<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<script>REPLACEME</script>
</head>
<body>
</body>
</html>";
var server = http.createServer(function (request, response) {
fs.readFile('jquery.js', 'utf8', function (err,data) {
response.writeHead(200, {"Content-Type": "text/html"});
response.end(html.replace('REPLACEME', data));
});
});
server.listen(8000);
但這似乎是非常錯誤的,除了可能是作為演示Web框架功能的練習。 除非您在學校這樣做,否則只需安裝上述框架之一(或其他框架),這將很容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.