使用没有翡翠的快递时的潜在问题

Potential issue when using Express without Jade

本文关键字:快递 问题      更新时间:2023-09-26

我正在尝试在我的项目中使用 Express,推荐的视图方法是使用 Jade 模板引擎,如下所示:

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'Express' });
});

但我不想重写我现有的 HTML 文件,所以我使用这样的sendfile

/* GET home page. */
router.get('/', function(req, res, next) {
  res.sendfile("./views/hello.html");
});

而且效果很好!

但我的问题是,如果我使用sendfile来替换render,是否有一些我没有注意到的潜在问题?喜欢性能或安全问题?

如果没有,那么为什么推荐的方法是使用Jade?

直接发送HTML文件没有问题。直接发送 HTML 会快一些,因为 ja 文件需要在发送前编译成 HTML。

如果您需要动态模板(如php,jsp...)来生成动态页面,建议使用Jade。如果你的HTML只适用于Ajax,你根本不需要jade。

我直言,我认为发送 html 和不使用模板引擎时没有问题。我认为他们只建议使用模板引擎是因为开发人员更容易创建 html 结构的熊骨,而且您可以使用模板引擎做更多的事情(例如 if 语句、循环)。但请记住,您还应该为您的应用程序添加一些安全性,例如 helmetcors .