sách gpt4 ai đã đi

Sơ đồ JSON - Nhiều loại

In lại 作者:行者123 更新时间:2023-12-04 22:29:21 32 4
mua khóa gpt4 Nike

我有这个架构。它检查评论,目前工作正常。

var schema = {
nhận dạng: '',
type: 'object',
additionalProperties: false,
properties: {
text: {
type: 'string',
minLength: 1,
required: true
},
author: {
type: 'number',
required: true
}
}
};

我的评论结构是:
{
text: "Hello world!",
author: 1
}

但是现在,我需要验证这样的对象数组。所以我可以得到类似的东西:
  [
{
text: "Hello world! Im comment #1",
author: 1
},
{
text: "Super awesome comment #2!",
author: 0
}
]

有时我只得到一个评论,所以我得到一个对象,并且需要使用第一个模式,但有时我得到一组评论,我的模式不适合。

我听说过 json 模式 bất kỳ ,但我不知道该怎么做。

有些人喜欢:
bất kỳ  
schema-1 (object)
schema-2 (array with objects)

Có giúp được gì không?

Cảm ơn.

1 Câu trả lời

解决方案是在一个地方有一个通用定义,然后从 oneOf 中的两个不同选项中引用该通用定义。 :

在这里,我们将简单的对象定义放在 definitions 中。 :

{
"definitions": {
"singleObject": {
... same definition as in your question ...
}
}
}

然后我们在 oneOf 中引用这个模式:
{
"oneOf": [
{"$ref": "#/definitions/singleObject"}, // plain object
{
"type": "array", // array of plain objects
"items": {"$ref": "#/definitions/singleObject"}
}
],
"definitions": {
"singleObject": {...}
}
}

你可以用几种不同的方式来组织它——我个人经常以简单对象定义作为根模式,并在 definitions 中使用单/数组切换器。 ,所以我的文档的架构实际上是 http://example.com/schema#/definitions/arrayOrSingle .

关于JSON 模式 - 多种类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32966169/

32 4 0
行者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