这是一个slf4j记录器,我一直试图记录与2个参数的消息错误。
catch(ExecutionException executionException) {
LOGGER.error("TimeoutException caught , Error: " + SSG_TIMEOUT.getErrorText()
+ ". Message: " +executionException.getMessage());
}
``` `SSG_TIMEOUT.getErrorText()` 将结果转换为字符串 `"TimeOut error encountered"` 我用过的东西
手动消毒代码
return entry.replace("\t", "\t").replace("\b", "\b").replace("\n",
"\n").replace("\r", "\r").replace("\f", "\f").replace("\u0000",
"\0").replace("\a", "\a").replace("\v", "\v").replace("\e",
"\e").replaceAll("\p{Cntrl}", "").replace("'", "\'").replace(""",
"\"").replace("\", "\\");
``` StringEscapeUtils.escapeJson(String errorMessage)
字符串生成器附加字符串+ escapeJson(StringBuilder.toString())
我仍然在veracode报告中看到了这个问题。
有什么建议吗?
1条答案
按热度按时间clj7thdc1#
首先,前两种消毒方法是正确的,只是veracode不支持。
在使用方法之前,您应该访问https://help.veracode.com/r/review_cleansers
因此,对于上述问题,stringutils.normalizespace()有效。”stringutils.escapejava“也可以使用,但它似乎已被弃用
解决方案: