URL spring 中的匹配器使用正则表达式启动

URL Matcher in spring boot with regular expression

我需要在 spring 启动时处理所有请求,除了少数使用单一处理程序方法的请求。

应提供的有效网址 -

/test/login
/test/dashboard
/test/validate/details

不应提供的无效网址是 -

/test/asset/login
/test/asset
/test/validate/asset

基本上任何包含字符串 "asset" 的 URL 都不应该被处理。

到目前为止,我正在尝试如下但它不起作用 -

@GetMapping("test/{path:^(?!.*(asset))}")
    String hello(String path){
        return "hello>>" + path;
    }

但这不起作用。我认为我使用的正则表达式存在一些问题。

非常感谢任何帮助。

试试这个正则表达式:

^(?:(?!asset).)*$