javascript - Node.js 在本地返回 JS 文件

标签 javascript jquery html node.js

在我的 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); 

最佳答案

您无法轻松地在一个简单的 Node 服务器中同时提供网页和 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 端点和静态 Assets 。很多人用 express :

http://expressjs.com/

或者甚至是像这样简单的事情:

https://github.com/creationix/node-router

我想你可以使用裸 Node 服务器提供一个嵌入了 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 框架功能的练习。除非您是为了学校这样做,否则只需安装上述框架之一(或其他框架)即可,这很容易。

关于javascript - Node.js 在本地返回 JS 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29552949/

相关文章:

Jquery数据表列过滤器标题响应式

javascript - 用于 jqMobi 的 UPS 条码插件

javascript - 在 body 标签内声明函数会导致 "Function not defined"

html - 为什么这个简单的 HTML CSS 文本笔画不起作用?

javascript - 如何在 Safari 10 上触发画中画

javascript - 隐藏 ExtJS 网格列标题

javascript - 加载或创建字段时 JQuery 输入掩码失败

javascript - Firefox 上的 HTTPS iFrame 出现安全错误

javascript - 如何使用 Chrome 扩展向 javascript 文件添加断点

javascript - onclick时扩展css的高度并使用jQUERY关闭