如何使用ESAPI直接编码HTML对象。
String a = "<t"
String a= ESAPI.encoder().encodeForHTML(a);
而不是String a,我想传递一个包含String字段的对象?
答案 0 :(得分:0)
你必须自己写。 Encoder.EncodeForHTML(String s )
只会占用一个字符串。 ESAPI没有为您提供处理编码的其他选项。
您可以使用反射来迭代类的String类型字段并对它们进行全部编码。听起来您希望能够一般地编码所有内容而无需分析应用程序对该数据执行的操作。由于我之前概述here.
的原因,这是有风险的您希望尽可能晚地进行编码,尽可能靠近视图。它是视图中的代码,用于确定转义的正确上下文。