为什么 Spring Cloud 合约中的 regex(nonBlank()) 有时会生成像 \u0008 这样的控制符号,这会破坏生成的 java 文件的编译?这使得 nonBlank() 有点不可靠和不可用。我可以指定自己的正则表达式[a-z]*
,但也可以涵盖非 ascii unicode 符号。
合同示例:
package contracts.api
import org.springframework.cloud.contract.spec.Contract
Contract.make {
request {
method 'GET'
urlPath('/v1/users') {
queryParameters {
parameter 'userId': value(regex(nonBlank()))
}
}
}
response {
status 200
}
}