我如何从expressJS检索数据?没有它被覆盖或重定向用户。
<html>
<body>
<h1>Retrieved data</h1>
</body>
</html>
例如,如果服务器端看起来像这样,我将如何添加它?
var express = require("express");
var app = express();
app.get("/", function (req, res) {
res.sendFile(__dirname + "/index.html");
//how do i add data to the <h1> tag
});
app.listen(10022, function () {
console.log("server is up");
});
答案 0 :(得分:1)
您无法使用.html文件执行此操作。你需要一个EJS文件。这个标记看起来像这样。
<html>
<body>
<h1>Retrieved <%= data %></h1>
</body>
</html>
然后你需要ejs模块。运行以下NPM命令。
npm install ejs
因此,将index.html更改为index.ejs,确保它位于名为views
的目录中,然后将服务器端代码修改为此。
var express = require("express");
var app = express();
app.set("view engine", "ejs");
app.get("/", function (req, res) {
res.render("index", {data: 'This is the data'});
});
app.listen(10022, function () {
console.log("server is up");
});
EJS是一种模板化语言,可转换为HTML,将您传入的数据对象通过渲染方法,渲染到服务器端,然后将其发送到浏览器。