使用express.js转义用户输入

时间:2012-11-06 23:13:52

标签: mongodb express escaping

当用户填写表单时,如何在express.js中转义用户输入?

express.js默认执行此操作吗?我找不到来源。

我是否必须使用express-validator.js之类的第三方模块?

更新
我想出了转义和验证之间的区别。

我想要做的是逃避用户输入,但我应该做的是验证它,确保它是有效的格式,然后将输出转义为表格,如果它无效,为用户提供他们输入的确切内容。

2 个答案:

答案 0 :(得分:1)

<%= some_html %>会自动转义它。 <%- some_html %>将完整输出html。

答案 1 :(得分:0)

你需要做什么样的逃避? Express会自动为您解码(而不是unescape)查询字符串,并将其作为req.query提供。 URL params也将自动为您解码。

如果您需要在渲染时转义包含用户输入的HTML,则应通过模板引擎执行此操作。默认情况下,大多数模板引擎(如jade(= value)或把手或小胡子({{value}})都会转义HTML,并且需要使用显式语法通过非转义(!= value在jade中传递数据或{在把手/胡子中{1}}。