我试图描述的API有一个结构,其中根对象可以包含任意数量的子对象(属性本身就是对象)。根对象中的“键”或属性是子对象的唯一标识符,值是子对象的其余数据。
{
"child1": { ... bunch of stuff ... },
"child2": { ... bunch of stuff ... },
...
}
可以类似地将其建模为数组,例如:
[
{ "id": "child1", ... bunch of stuff ... },
{ "id": "child2", ... bunch of stuff ... },
...
]
但这既使得识别属性在结构上不那么清楚,又使得子ID之间的唯一性是隐式的,而不是显式的,所以我们想使用一个对象或一个映射。
"Parent": {
"additionalProperties": {
"$ref": "#/components/schemas/Child",
}
你的例子是正确的。
如何记录对象中“键”的限制?理想情况下,我想说“它不是任意的字符串,而是与子字符串相对应的ID”。这有任何支持吗?
OAS3.1完全支持JSON模式2020-12,包括patternproperties
。此关键字允许您使用正则表达式定义字典键的格式:
"Parent": {
"type": "object",
"patternProperties": {
"^child\d+$": {
"$ref": "#/components/schemas/Child"
}
},
"description": "A map of `Child` schemas, where the keys are IDs that correspond to the child"
}
"Parent": {
"type": "object",
"propertyNames": {
"enum": ["foo", "bar"]
},
"additionalProperties": {
"$ref": "#/components/schemas/Child"
}
}
"Parent": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Child"
},
"description": "A map of `Child` schemas, where the keys are IDs that correspond to the child",
"example": {
"child1": { ... bunch of stuff ... },
"child2": { ... bunch of stuff ... },
}
// Keys can be: key1, key2, key3
"Parent": {
"type": "object",
"properties": {
"key1": { "$ref": "#/components/schemas/Child" },
"key2": { "$ref": "#/components/schemas/Child" },
"key3": { "$ref": "#/components/schemas/Child" }
}
}
问题内容: 我的代码中具有对象属性,如下所示: 问题是我有100多个字段名称,需要动态写入属性名称。否则,对象名称和属性的键将始终相同。所以我尝试了: 希望可以动态更改属性名称并访问正确的值。但是,我一直在stdClass :: $ field中得到’undefined property $ field;。 我或多或少尝试在执行之前动态编写php,以便它可以输出适当的值。关于如何处理此问题的想法?
根据指定对象创建一个新对象,使其所有的 key 都小写。 使用 Object.keys() 和 Array.reduce() 根据指定对象创建一个新对象。 使用 String.toLowerCase() 将原始对象中的每个 key 转换为小写。 const lowercaseKeys = obj => Object.keys(obj).reduce((acc, key) => { ac
我们有一个可能包含字段“extraInfo”的响应类型“Error”。 一个例子是: 另一个可能是: 由于它是一个自由形式的对象,有没有办法在Swagger中为它提供示例? 在规范中找不到它:https://swagger.io/docs/specification/data-models/data-types/
我使用的是类似于: 这给了我这样的输出: 我想访问键[0]中的字符串值。当我尝试做以下事情时: 我得到这个错误: 分析错误:语法错误,意外的T_DNUMBER 这两个数字/整数似乎有问题。
问题内容: JSON编码的Google API返回了这样的对象 谁知道我该如何获取价值? 显然返回 注意:未定义的变量:在/ usr / local / … 致命错误:无法访问/ ....中的空属性 问题答案: 由于属性的名称是string ,因此可以这样访问它: 另外,您可以将属性的名称放在变量中,然后像这样使用它: 您可以在repl.it上看到它们的实际作用:https ://repl.it/
在 PowerShell 中,如何通过指定对象的名称(字符串)来获取对象的属性值?我想要类似这样的东西: 是否有类似于“获取属性名称”的内容?