Cloudflare 过滤器 API 支持用于验证表达式的端点。
curl "https://api.cloudflare.com/client/v4/filters/validate-expr?expression=ip.src==34" \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>"{
"result": null,
"success": false,
"errors": [
{
"message": "Filter parsing error:\n`ip.src==34`\n ^^ couldn't parse address in network: invalid IP address syntax\n"
}
],
"messages": null
}请注意响应中的验证错误。在此示例中,错误是由于无效的 IP 地址格式引起的:
Filter parsing error:
`ip.src==34`
^^ couldn't parse address in network: invalid IP address syntaxcurl "https://api.cloudflare.com/client/v4/filters/validate-expr" \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>" \
--header "Content-Type: application/json" \
--data '{
"expression": "ip.src in {2400:cb00::/32 2405:8100::/2000 2c0f:f248::/32 2a06:98c0::/29}"
}'{
"result": null,
"success": false,
"errors": [
{
"message": "Filter parsing error:\n`ip.src in {2400:cb00::/32 2405:8100::/2000 2c0f:f248::/32 2a06:98c0::/29}`\n ^^^^ number too large to fit in target type while parsing with radix 10\n"
}
],
"messages": null
}请注意响应中的验证错误。在此示例中,子网掩码的值 /2000 不是有效的 IPv6 CIDR 掩码:
Filter parsing error:
`ip.src in {2400:cb00::/32 2405:8100::/2000 2c0f:f248::/32 2a06:98c0::/29}`
^^^^ number too large to fit in target type while parsing with radix 10