![](/img/trans.png)
[英]Node.js & Express.js/Jade res.render returns res.render is not a function
[英]Node.js Express.js | Automatically render handelbar templates from views/static folder
我有以下代码可以自动从views / static文件夹中加载我的handelbar模板,而不必手动为每个页面设置路线。
app.get("/:template", function(req,res){
var template = req.params.template; // Is this safe?
res.render("static/" + template, function(err, html) {
if (err) {
res.send(404, 'Sorry cant find that!');
} else {
res.send(html);
}
});
});
它工作正常,但是我担心这可能会使我的应用面临安全问题。 任何建议,我如何可以做得更好。 我正在使用Express。 非常感谢你的帮助。
我认为这很安全。
通常,您必须担心所传递的路径包含../
(以返回目录级别),但这些路径与您的路由不匹配。 另外,您声明的路由将在/
处停止匹配,因此/foo/../bar
请求也将不匹配。
当static
目录包含您不想公开的文件时, 可能会发生一个问题:对/secret.js
的请求至少会尝试呈现一个称为static/secret.js
的文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.