如果模板存在,如何自动处理请求(使用node.js + express)

我用express(和EJS作为模板语言)使用node.js,想知道如果模板目录中存在模板,是否有一种简单的方法可以自动处理与给定path匹配的服务页面。

例如:

app.get('/subdir/:pagename', function(req, res, next) { // Automatically & securely load 'pagename' only if // '/subdir/pagename.ejs' exists in my template dir res.render(subdir/pagename); }); 

我知道我可以为自己编写一个安全的处理程序,通过从pagename中除去不是A-z0-9-_的所有内容,然后检查文件是否存在(如果不存在则提供404),但是好奇知道是否有更好的方法构build到node.js中,而不是写一些样板来处理它。

注意:我已经有这样的静态页面,这些页面不是静态的唯一原因是他们使用布局系统给他们一个共同的页眉+页脚。

会高兴地接受“不,没有”。 作为一个答案,如果有任何Express专家或任何人已经看过这个!

从一开始就使用express – 对不起,答案是否定的。 TJ这样做是有原因的,因为这个function是特定于你的用例,不属于框架。 你可以看看是否有人用npm写了一个模块来实现这个function,但是如你所知,它不是很难推出自己的。

快乐的黑客! =)