Spring URI模式。在正则表达式路径中使用斜杠

问题描述 投票:0回答:1

我想在url模式中使用regex创建带动态url的端点。

URI模板:[host] / {regexpart} / endpoint

动态uri的例子:

  • [主机] /一个/端点
  • [主机] / B /端点

另外我想在uri路径的正则表达式部分中使用斜杠,如下所示:

  • [主机] / A / B /端点
  • [主机] / A / B / C / d /端点

我这样说:

@GetMapping(path = "/{regexpart:[a-z/]*}/endpoint")
public DeferredResult<ResponseEntity<?>> enpoint(@PathVariable("regexpart") String regexpart) {
    // Some logic 
}

但它没有用。有没有办法定义正则表达式在其中使用斜杠?谢谢!

java regex spring uri
1个回答
1
投票

编写它的方式,正则表达式模式限制在1个路径段内。

您可能正在寻找的是类似的东西

@GetMapping(path = "/**/endpoint")

**将允许跨多个路径段的任何字符。

这将允许[host]中以/endpoint结尾的任何有效路径如果您需要将其限制为某些字符(例如[a-z],这应该让您走上正确的轨道。

© www.soinside.com 2019 - 2024. All rights reserved.