如何根据查询参数在Node.js中发送不同的HTML文件
下面的方法介绍了如何根据查询参数在Node.js中发送不同的HTML文件。
方法: 通过接收查询参数并将不同的HTML文件与相应的参数进行映射,可以轻松实现任务。
步骤1: 创建项目文件夹并使用以下命令安装 express 模块:
npm install express
步骤2: 在项目的根目录中创建一个 main.js 文件,并在其中写下以下代码。
main.js
var express = require('express');
var app = express();
const fs = require("fs");
// Helper function to read and serve html files
// according to the requested paths
function readAndServe(path, res) {
fs.readFile(path, function (err, data) {
res.end(data);
})
}
// Setting get request path to receive id as query parameter
app.get('/:id', function (req, res) {
console.log(req.params);
// Mapping different id's with respective html files
if (req.params.id == "id1")
readAndServe("./id1.html", res);
else if (req.params.id == "id2")
readAndServe("./id2.html", res);
else {
res.end("Invalid request");
}
});
app.listen(8080, () => { console.log("Server Listening on Port 8080") });
步骤 3: 在项目的根目录中创建 id1.html 和 id2.html 文件,如下所示。
id1.html
<!DOCTYPE HTML>
<html>
<head>
<title>Id 1</title>
</head>
<body>
<h1>Requested Id = 1</h1>
</body>
</html>
id2.html
<!DOCTYPE HTML>
<html>
<head>
<title>Id 2</title>
</head>
<body>
<h1>Requested Id = 2</h1>
</body>
</html>
步骤4: 使用以下命令从项目的根目录启动服务器:
node main.js
输出:
- 现在打开你的浏览器,转到 http://localhost:8080/id1 ,当id1作为查询参数传递时,你将看到以下输出。
* 现在转到 http://localhost:8080/id2 ,当id2作为查询参数传递时,你将看到以下输出。