发现场景:
在微服务配置文件进行地址过滤处理的时候,填写过滤地址
exclude:/function/**
后发现正常调用报了下面这个错误:
request processing failed java.uitl. regex .Pattern Syntax Exception:Dangling meta character “*” near index 9
异常翻译:
请求处理失败 java.util 正则表达式。 模式语法异常:在索引 9 附近悬空元字符“*”
错误原因:
java.util.regex.PatternSyntaxException, dangling metacharacter “?”
代表是字符*的使用不符合正则规范。
查相关资料,在正则表达式中,像"?“,”“,”“都是正则表达式的保留字符,所以在用的时候需要对他们进行转义,像”\?“,”\“,”\"就ok了
处理方法:
#error
exclude:/function/**
修改为
#right
exclude:/function/\\*\\*