|
1
|
package com.ruoyi.common.xss;
|
1
|
package com.ruoyi.common.xss;
|
|
2
|
|
2
|
|
|
|
|
3
|
+import com.ruoyi.common.utils.StringUtils;
|
|
3
|
import javax.validation.ConstraintValidator;
|
4
|
import javax.validation.ConstraintValidator;
|
|
4
|
import javax.validation.ConstraintValidatorContext;
|
5
|
import javax.validation.ConstraintValidatorContext;
|
|
5
|
import java.util.regex.Matcher;
|
6
|
import java.util.regex.Matcher;
|
|
@@ -12,15 +13,19 @@ import java.util.regex.Pattern; |
|
@@ -12,15 +13,19 @@ import java.util.regex.Pattern; |
|
12
|
*/
|
13
|
*/
|
|
13
|
public class XssValidator implements ConstraintValidator<Xss, String>
|
14
|
public class XssValidator implements ConstraintValidator<Xss, String>
|
|
14
|
{
|
15
|
{
|
|
15
|
- private final String HTML_PATTERN = "<(\\S*?)[^>]*>.*?|<.*? />";
|
16
|
+ private static final String HTML_PATTERN = "<(\\S*?)[^>]*>.*?|<.*? />";
|
|
16
|
|
17
|
|
|
17
|
@Override
|
18
|
@Override
|
|
18
|
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext)
|
19
|
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext)
|
|
19
|
{
|
20
|
{
|
|
|
|
21
|
+ if (StringUtils.isBlank(value))
|
|
|
|
22
|
+ {
|
|
|
|
23
|
+ return true;
|
|
|
|
24
|
+ }
|
|
20
|
return !containsHtml(value);
|
25
|
return !containsHtml(value);
|
|
21
|
}
|
26
|
}
|
|
22
|
|
27
|
|
|
23
|
- public boolean containsHtml(String value)
|
28
|
+ public static boolean containsHtml(String value)
|
|
24
|
{
|
29
|
{
|
|
25
|
Pattern pattern = Pattern.compile(HTML_PATTERN);
|
30
|
Pattern pattern = Pattern.compile(HTML_PATTERN);
|
|
26
|
Matcher matcher = pattern.matcher(value);
|
31
|
Matcher matcher = pattern.matcher(value);
|