javascript 将Node.js脚本连接到前端项目

ekqde3dh  于 5个月前  发布在  Java
关注(0)|答案(2)|浏览(52)

作为一个JavaScript新手,我想使用Node.js创建一个前端项目,其中包含很少的后端解决方案。
我有一个带有一些变量和按钮的用户界面。这些变量必须传递到一个简单的.txt文件(在我的文件系统上)并覆盖其内容。为此,我使用了nodejs脚本:

var fs = require('fs');

fs.writeFile('log.txt', 'This is my text', function (err) {
  if (err) throw err;
  console.log('Replaced!');
});

字符串
但我希望它能在单击时工作,而这只能在命令行中工作。
所以我有以下两个问题:
1.我想更新.txt文件与按钮点击.所以基本上上面写的代码必须执行,当我点击按钮.但我不明白,如何连接前端与此nodejs文件.
1.我希望内容是动态的。我相信,一旦第一个问题得到解决,这将是直截了当的,但现在我也不知道。
我100%确定我错过了一些东西(也许是一个Web服务器,但即使这样,怎么会?)。我做了我的研究,但我发现的一切要么是矫枉过正,要么我甚至不理解它。任何帮助都将不胜感激,教程,建议或只是一个关键字,我可以用我的研究。

fquxozlt

fquxozlt1#

看看express。这是一个“快速,不固执己见,最低限度的节点Web框架”。有了它,你可以构建一个小型的Web服务器:

var express = require('express');
var app = express();

app.get('/', function (req, res) {
  res.send('Hello World');
});

app.listen(3000); // Webserver is running on port 3000

字符串
如果你运行它并在浏览器上运行http://localhost:3000,它会打印Hello World
现在你要做的就是在每次请求一个特定的URL时调用你的日志函数。

var fs = require('fs');

function log(text, callback) {
  fs.writeFile('log.txt', text, callback);
}

app.get('/', function (req, res) {
  log('This is my text', function (err) {
    if (err) throw err;
    res.send('Replaced!');
  });
});


现在,当你点击按钮时,你需要向服务器发出一个AJAX请求(可能使用jQuery)。

9cbw7uwe

9cbw7uwe2#

Node.js不像其他脚本语言(如Python或VB)那样有一个内置的前端库。要创建一个node.js,你的直觉是正确的,因为你需要你的应用程序将自己暴露为一个Web服务器。这样做的流行库称为express,它非常容易入门。我建议你按照express quickstart tutorial进入它。
从这里开始,您可以将代码 Package 在web服务器的路由中(例如/save)。

var fs = require('fs');
var express = require('express');
var app = express();

app.get('/save', function (req, res) {
  fs.writeFile('log.txt', 'This is my text', function (err) {
    if (err) throw err;
    console.log('Replaced!');
    res.send('Replaced!')
  });
})

app.listen(3000, () => console.log('Example app listening on port 3000!'))

字符串
对于这个安装了依赖项的示例,在浏览器中打开localhost:3000/保存将导致代码运行。

相关问题