sách gpt4 ai đã đi

Làm thế nào để liên kết Sơ đồ JSON với JSON của tôi để xác thực JSON?

In lại 作者:行者123 更新时间:2023-12-02 03:08:07 36 4
mua khóa gpt4 Nike

Tôi mới tìm hiểu về JSON Schema và đã đọc bài JSON Schema là gì cùng nhiều bài viết khác. Nhưng tôi không biết cách liên kết JSON Schema với JSON để xác thực với JSON Schema đó. Có ai có thể giải thích được điều này không?
请任何人都可以用简单的话向我解释我如何将 JSON 模式链接到 JSON 文件以根据 JSON 模式检查和验证 JSON 文件数据?

1 Câu trả lời

查看 json.net 标记,我得出结论,您打算在 C# 中针对 json 数据进行 JSON 数据验证。

这非常简单/直接。

  • 您将架构解析为 JsonSchema 对象实例。
  • 将 json 数据解析为 JObject 对象实例。
  • GọiIsValid 实例变量的JObject 方法(以解析后的JsonSchema 对象实例为参数)。此方法调用将返回 bool - ĐÚNG VẬY 如果有效,SAI 如果无效。

  • 这里有2个完整的例子

    模式是有效的例子
    string schemaJson = @"{
    'description': 'A person',
    'type': 'object',
    'properties':
    {
    'name': {'type':'string'},
    'hobbies': {
    'type': 'array',
    'items': {'type':'string'}
    }
    }
    }";

    JsonSchema schema = JsonSchema.Parse(schemaJson);

    JObject person = JObject.Parse(@"{
    'name': 'James',
    'hobbies': ['.NET', 'Blogging', 'Reading', 'Xbox', 'LOLCATS']
    }");

    bool valid = person.IsValid(schema);
    // true

    架构是一致的示例
    JsonSchema schema = JsonSchema.Parse(schemaJson);

    JObject person = JObject.Parse(@"{
    'name': null,
    'hobbies': ['Invalid content', 0.123456789]
    }");

    IList messages;
    bool valid = person.IsValid(schema, out messages);
    // false
    // Invalid type. Expected String but got Null. Line 2, position 21.
    // Invalid type. Expected String but got Float. Line 3, position 51.

    nguồn: newtonsoft.com / Validating JSON with JSON Schema

    更新 1: 看起来架构验证已移出到它自己的库/Nuget 包中。但是请注意,在商业项目中使用这个并不是完全免费的(如果这是您的情况)。定价页面有更多信息。

    Json.NET Schema - Complete JSON Schema framework for .NET

    这里还有一个在线 json 模式验证器 => http://www.jsonschemavalidator.net/

    关于json - 如何将 JSON Schema 链接到我的 JSON 以验证 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41411329/

    36 4 0
    Bài viết được đề xuất: wolfram-mathematica - 使用 Mathematica 中的 Manipulation 函数 :
    Bài viết được đề xuất: mongodb - 执行 mongodump 后 Mongod 服务崩溃
    Bài viết được đề xuất: php/simplexml - LIBXML 选项被忽略?
    Bài viết được đề xuất: apache-spark - 需要更少的 Parquet 文件
    行者123
    Hồ sơ cá nhân

    Tôi là một lập trình viên xuất sắc, rất giỏi!

    Nhận phiếu giảm giá Didi Taxi miễn phí
    Mã giảm giá Didi Taxi
    Giấy chứng nhận ICP Bắc Kinh số 000000
    Hợp tác quảng cáo: 1813099741@qq.com 6ren.com