You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JSON Schema内置格式校验以IPv4/IPv6/主机名为键的文档

使用JSON Schema内置格式校验IPv4/IPv6/主机名类型的键

你可以利用JSON Schema的propertyNames关键字结合内置format规则,统一校验所有对象键的格式,无需编写复杂正则。具体方案如下:

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "propertyNames": {
    "anyOf": [
      { "format": "ipv4" },
      { "format": "ipv6" },
      { "format": "hostname" }
    ]
  },
  "additionalProperties": {}
}

关键部分说明:

  • propertyNames:定义对象所有属性名必须满足的校验规则,这里要求所有键都符合后续格式要求。
  • anyOf:表示键只需匹配其中一种格式即可通过校验,覆盖IPv4、IPv6、主机名三种场景。
  • 内置format:
    • ipv4:校验标准IPv4地址格式
    • ipv6:校验标准IPv6地址格式
    • hostname:校验符合RFC标准的主机名格式
  • additionalProperties:设为{}表示允许任意格式的值,满足你“值的内容无关紧要”的需求。

注意:该方案依赖JSON Schema Draft 7及以上版本,因为format对ipv4、ipv6、hostname的标准化支持从这个版本开始。

内容的提问来源于stack exchange,提问作者Sujal Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 23:14:56