当前位置: 首页 > 知识库问答 >
问题:

在Spring云网关路径谓词中应用正则表达式

高溪叠
2023-03-14

我正在使用3.1.0版本的Spring Cloud Gateway,我需要帮助来检查和修复我的路由配置的路径谓词过滤器。

我试图在路径之间使用正则表达式,路由在我的配置中看起来像这样:

        - id: Route1
          uri: https://example.com
          predicates:
            - Path=/random/path/\d+/update
            - Method=POST

虽然这是一个有效的正则表达式,但我收到了路径请求的404错误代码:

/random/path/12/update

因此,我需要帮助来找出这个usecase的正确配置。

共有1个答案

巫朝明
2023-03-14

它需要一个命名的路径段。请参阅此处的语法。然后,您可以在SetPath过滤器中使用{mynum}

    - id: Route1
      uri: https://example.com
      predicates:
        - Path=/random/path/{mynum:\d+}/update
        - Method=POST
 类似资料:
  • 在下面的spring cloud gateway配置中,我试图用匹配路径结束,但它不能匹配路径: spring cloud gateway打印以下日志:

  • 是否可以使用spring云网关配置的谓词部分检查标头授权,我的目标是在一个或多个endpoint上进行一些基本授权 我正在使用应用程序.yml 进行路由配置

  • 本文向大家介绍linux shell 路径截取正则表达式,包括了linux shell 路径截取正则表达式的使用技巧和注意事项,需要的朋友参考一下 最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下: file=/dir1/dir2/dir3/my.file.txt 我们可以用${ }分别替换获得不同的值: ${file#*/}:拿掉第一条/及其左边的字串:dir

  • 考虑这个使用Spring Boot 2.1.2和Spring Cloud Greenwich.release的基于微服务的应用程序: 每个微服务使用JSESSIONID cookie来标识自己的专用Servlet会话(即没有与Spring session和Redis共享的全局唯一会话)。 外部传入请求由Spring Cloud Gateway路由(以及通过Spring Cloud Netflix使

  • 问题内容: 在执行程序期间,我需要使用其他jar。我手动将罐子添加到相对的./lib文件夹中,然后执行程序。如何在清单文件中定义类路径? 问题答案: 您不能在清单的属性中使用正则表达式或其他通配符。 Java中仅支持一种通配符,并且仅当在命令行上在“手动” 调用(即,不使用)上指定时,该通配符才能使用:usingdirectoryname/*。

  • 问题内容: 我问这个问题有点傻,但是从我读过的所有内容来看,这应该有效,但对我而言却无效。我只是想使用正则表达式匹配字符串中的整个单词。 因此,如果我试图在句子中找到单词“ the”,则对于“褐狐快速越过懒狗”应该返回true,而对于“褐狐快速越过懒狗”则返回false。 。 我已经试过了: 我也尝试过: 我也尝试过此正则表达式:“ \ bthe \ b” 而且它们总是返回false。我觉得我在这