Browse Source

修复Xss注解字段值为空时的异常问题

tags/v3.5.0
RuoYi 3 years ago
parent
commit
27d46fc0a4
  1. 13
      ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/XssValidator.java

13
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/XssValidator.java

@ -1,9 +1,10 @@
package com.ruoyi.common.core.xss; package com.ruoyi.common.core.xss;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import com.ruoyi.common.core.utils.StringUtils;
/** /**
* 自定义xss校验注解实现 * 自定义xss校验注解实现
@ -12,15 +13,19 @@ import java.util.regex.Pattern;
*/ */
public class XssValidator implements ConstraintValidator<Xss, String> public class XssValidator implements ConstraintValidator<Xss, String>
{ {
private final String HTML_PATTERN = "<(\\S*?)[^>]*>.*?|<.*? />"; private static final String HTML_PATTERN = "<(\\S*?)[^>]*>.*?|<.*? />";
@Override @Override
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext)
{ {
if (StringUtils.isBlank(value))
{
return true;
}
return !containsHtml(value); return !containsHtml(value);
} }
public boolean containsHtml(String value) public static boolean containsHtml(String value)
{ {
Pattern pattern = Pattern.compile(HTML_PATTERN); Pattern pattern = Pattern.compile(HTML_PATTERN);
Matcher matcher = pattern.matcher(value); Matcher matcher = pattern.matcher(value);

Loading…
Cancel
Save