diff --git a/src/org/redkale/net/http/HttpPrepareServlet.java b/src/org/redkale/net/http/HttpPrepareServlet.java index af0a2f60d..2219545a5 100644 --- a/src/org/redkale/net/http/HttpPrepareServlet.java +++ b/src/org/redkale/net/http/HttpPrepareServlet.java @@ -112,7 +112,16 @@ public class HttpPrepareServlet extends PrepareServlet removeHttpServlet(final String mapping) { + public List removeHttpServlet(String mapping0) { + if (Utility.contains(mapping0, '.', '*', '{', '[', '(', '|', '^', '$', '+', '?', '\\')) { //是否是正则表达式)) + if (mapping0.charAt(0) != '^') mapping0 = '^' + mapping0; + if (mapping0.endsWith("/*")) { + mapping0 = mapping0.substring(0, mapping0.length() - 1) + ".*"; + } else { + mapping0 = mapping0 + "$"; + } + } + final String mapping = mapping0; Predicate predicateEntry = (t) -> t.mapping.equals(mapping); Predicate> predicateFilter = (t) -> t.getKey().equals(mapping); return removeHttpServlet(predicateEntry, predicateFilter);