1

当用户填写表单时,我该如何转义用户输入express.js

express.js默认情况下会这样做吗?我找不到来源。

我必须使用第三方模块express-validator.js吗?

更新
我弄清楚了转义和验证之间的区别。

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

4

2 回答 2

1

<%= some_html %>会自动逃脱它。<%- some_html %>将完整地输出html。

于 2012-11-06T23:30:29.457 回答
0

你到底需要做什么逃避?Express 将自动为您解码(而不是取消转义)查询字符串,并将其作为req.query. URL 参数也将自动为您未编码。

如果您需要在渲染时转义包含用户输入的 HTML,您应该通过您的模板引擎来完成。大多数模板引擎,如jade ( = value) 或handlebars 或mustache ( {{value}}) 默认情况下会转义HTML,并且需要显式语法才能通过未转义的数据(!= value在jade 或{{{value}}}handlebars/mustache 中)。

于 2012-11-06T23:18:17.090 回答