如何在 Express 中更新动态 URL 中的内容?

How to update content in dynamic URLs in Express?

下面我从 fn 数组创建了 3 个 URL。在现实生活中,这将是大约 200 个不同的文件名。

创建它们后,我是否希望能够将 URL 的内容更新为 10

对于以下 PoC,内容不变。

问题

有谁知道如何即时更改 URL 的内容?

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

const fn = ['filename1', 'filename2', 'filename3'];

for (const e of fn) {
  app.get(`/${e}`, (req, res) => {
    res.send(e);
  });
};

app.get(`/filename1`, (req, res) => {
  res.send('test');
});

const port = 1900;
app.listen(port, () => {
  console.log(`http://localhost:${port}/`);
});

您可以创建一个通配符路由侦听器并在其中添加您的逻辑

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

const fn = ['filename1', 'filename2', 'filename3'];

app.get("/*", (req, res) => {
  // Do your logic inside
  if(fn.includes(req.url.replace('/',''))) return res.send('ok');
  
  res.status(404).send('Not Found');
});


const port = 1900;
app.listen(port, () => {
  console.log(`http://localhost:${port}/`);
});