我正试图弄清楚如何在OpenAPI中记录我的两个查询参数。
filter
键是一个关联数组,可以包含API中的资源名称集合列表。分配给每个筛选项的值是单个id或逗号分隔的id列表。
排序
For排序也遵循JSON:API建议,因此如下所示:
例如,我不确定是否可以指定过滤器键是一个关联数组,或者它接受逗号分隔的ID列表。对于排序几乎同样的问题:如何表示逗号分隔的排序字段列表?
这可能有点老了,但我目前正在记录一个API,它的排序、筛选和动态关系包括遵守JSON API规范,我刚刚知道如何正确地记录筛选查询参数。下面的代码是用JSON编写的,但我希望如果您正在编写YAML,您可以对其进行修改以满足自己的需要
{
"schema": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Id of the user",
"type": "string"
},
"referrer_id": {
"description": "The id of the user that referred the user",
"type": "string"
},
"email_verified": {
"description": "Whether the user has verified their email address",
"type": "boolean"
},
"trashed": {
"description": "Whether the user has been soft deleted",
"type": "string",
"enum": [
"with",
"only"
]
}
}
},
"in": "query",
"name": "filter",
"description": "Really long description.........",
"style": "deepObject",
"explode": true,
"allowReserved": true
}
要进行文档排序,您可以按照下面的示例进行
parameters:
- in: query
name: ids
description: One or more IDs
required: true
schema:
type: array
items:
type: integer
style: form
explode: false
examples:
oneId:
summary: Example of a single ID
value: [5] # ?ids=5
multipleIds:
summary: Example of multiple IDs
value: [1, 5, 7] # ?ids=1,5,7
我通过compojure-api使用ring-swagger。我有几个查询参数,我正在努力寻找一种方法来向单个查询参数添加描述。我可以添加整个endpoint的摘要,但这还不够。 是否可以使用ing-swagger/compojure-api向单个查询参数添加swagger描述?
如何在swagger UI中将数组对象传递给参数?这是一个GET请求。我有一个数据类型为Array[]和参数类型为query的请求参数。我已经尝试了下面的阵列,它似乎不工作。我不熟悉招摇的用法。无法解决问题。 型:
这是继续这个问题。 我添加了一个模型来获取查询参数到pydantic模型 它按预期工作,但描述(在模型中添加)没有反映在 Swagger UI 中 但是,如果请求正文使用相同的模型,则描述将以大摇大摆的方式显示 为了在swagger ui中获得对QueryParams(model)的描述,我是否遗漏了什么?
问题内容: 这是我的简单表格: 这是我的Express.js /Node.js代码: 我试过或或,等等。它们都不起作用。他们都回来了。 当我更改为Get呼叫时,它可以工作,所以..有什么想法吗? 问题答案: 事情已经改变了再次启动 快速4.16.0 ,您现在可以使用与就像在 快车3.0 。 从 Express 4.0到4.15,* 这是不同的: * 然后: 其余的就像在 Express 3.0中一
我有一个基本的rest控制器,可以获取参数。 如果查询字符串包含我没有定义的参数,我如何拒绝连接? 当前,在调用此url时,只使用id执行该方法,而忽略未知的参数。一般来说,这很好,但我如何验证它们,以防返回HTTP状态码?
问题内容: 这是我的简单表格: 这是我的Express.js/Node.js代码: 我尝试过或或,等等。它们都不起作用。他们都回来了。 当我更改为Get呼叫时,它可以工作,所以..有什么想法吗? 问题答案: 事情已经改变了再次启动快速4.16.0,您现在可以使用与就像在快车3.0。 从Express 4.0到4.15,这是不同的: 然后: 其余的就像在Express 3.0中一样 : 首先,您需要