【问题标题】:Why do we need to send request like this in express, why can't we simply use html for this?为什么我们需要用 express 发送这样的请求,为什么我们不能简单地使用 html 呢?
【发布时间】:2019-01-22 14:12:00
【问题描述】:

为什么我们必须对节点中的每个页面都这样做?例如,如果有人想访问 /about 我们必须这样做如果有人想访问 /contact 我们必须这样做。为什么我们不能只创建简单的 HTML 页面,例如 about.html 和 contact.html,并在有人访问页面时提供它们?


app.get("/", (req,res) => {
  res.send("Hello World");
});

app.get("/about", (req, res) => {
  res.send("You are on about page");
});

【问题讨论】:

  • 你可以。但这是一种表示信息的静态方式。这种方法适用于您可能称之为单页应用程序。
  • 是的,我说的只是静态页面,比如关于我们等。
  • 将其呈现为单页应用程序的一个好处是所有包含仅生成一次。另一个是你有“漂亮”的网址。如果您认为在几个 html 文件上维护所有包含等内容更容易,请继续这样做。然后你可以“破解”.htaccess 文件以将/about 重定向到/about.html,如果你想要漂亮的网址。从长远来看,这将导致更多的痛苦。
  • 因此,如果您想提供静态页面,而不是使用节点 js,为什么不根据示例配置一个将提供静态页面的 nginx 服务器呢?如果没有找到页面,则在之后跟随节点 js... 如下所述:stackoverflow.com/questions/29383159/…

标签: node.js express


【解决方案1】:

可以,请查看Using template engines with Express 了解更多信息。

所以你的例子是:

app.get("/", (req,res) => {
  res.render("index");
});

app.get("/about", (req, res) => {
  res.render("about");
});

【讨论】:

  • 当我们可以简单地为这样的静态页面使用html页面时,为什么还要使用模板引擎。即使该页面涉及一些逻辑,我们也可以使用 vanilla JS。
猜你喜欢
  • 1970-01-01
  • 2021-01-01
  • 2012-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-24
  • 2011-07-05
  • 2016-02-01
相关资源
最近更新 更多