Spring MVC defaultHtmlEscape - 它在进出的方式上有效吗?

时间:2012-02-02 10:55:33

标签: java spring spring-mvc

当我在web.xml中将defaultHtmlEscape设置为true时,所有输入字段中设置的值都会被转义。

但是当提交它们时,这些值不会被转义。

所以,这个参数是否仅用于输出,并且不包括参数的提交(因此,如果我想在数据库中存储xss-safe值,我应该做其他事情)

2 个答案:

答案 0 :(得分:6)

输入字段的默认HTML转义设置已为true,因此true表示您默认获得的行为。

此外,我想如果你想在数据库中存储xss-safe值,你需要将它设置为false,以避免双重转义。

所以,你需要一些不同的东西来实现输入转义,也许是一个过滤器。虽然我认为输入转义不是一个好主意,但一致的输出转义看起来更可靠,并且不会在数据库中处理数据时产生问题。

答案 1 :(得分:1)

我认为要逃避form input,应该这样做:

<form:input path="someProperty" htmlEscape="true" />