否定 Spring 云合同中的 url 模式

Negate a url pattern in Spring Cloud contract

我有一个需要处理无效请求的要求。我想否定 合同请求中的 url 模式, 这是一个 groovy 文件。例如:

url value(consumer(regex('/employee/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}')))

在这里,我想处理所有与 uuid 正则表达式模式不匹配的请求。有什么办法可以做到这一点吗?

创建 2 个合同,而不是破解它。

  • 第一个合同将用于优先级为 1 的正则表达式
  • second 将用于 url,正则表达式匹配优先级为 10
  • 的任何 url

priority值越高优先级越小。这意味着如果 URL 有 2 个匹配的合同,将选择第一个存根。