JSON查询应该可以使用多个搜索参数。为此,服务器需要获取每个参数作为搜索对象,例如:
url/search=FirstParameter[EQ]foo&search=SecondParameter[EQ]bar
我们在swagger中使用下面的声明:
parameters:
searchParam:
description: |
array of strings like e.g. person.nameLast[\<operand>]Bur<br>
\<operands> \:= LEQ, LT, EQ, GT, GEQ, LIKE
name: search
in: query
schema:
type: array
writeOnly: true
items:
minItems: 1
type: string
问题是,从swagger生成的PHP库创建的请求如下:
url/search=FirstParameter[EQ]foo&SecondParameter[EQ]bar
这是服务器无法使用的。为了解决这个问题,我发现可以通过将属性“collectionFormat”设置为csv而不是multi来影响这个行为。
我的问题是,声明取自示例页面https://swagger.io/docs/specification/2-0/describing-parameters/
不工作并显示错误:
不应具有附加属性additionalProperty:collectionFormat
我试过了:
parameters:
searchParam:
description: |
array of strings like e.g. person.nameLast[\<operand>]Bur<br>
\<operands> \:= LEQ, LT, EQ, GT, GEQ, LIKE
name: search
in: query
schema:
type: array
collectionFormat: csv
writeOnly: true
items:
minItems: 1
type: string
问题可能是什么?
collectionFormat
是一个OpenAPI 2.0关键字(即在swagger中使用:“2.0”),
但你似乎正在使用OpenAPI 3.0(openapi:3.0.x
)。对应的 OAS3 关键字为样式
和分解
,有关详细信息,请参阅参数序列化指南。
尝试以下操作:
paths:
/url:
get:
parameters:
- in: query
name: search
description: |-
An array of strings like e.g. `person.nameLast[<operand>]value`
<operand> can be: LEQ, LT, EQ, GT, GEQ, LIKE
schema:
type: array
minItems: 1 # This keyword must be on the same level as `type: array`
items:
type: string
# Optional example
example:
- FirstParameter[EQ]foo
- SecondParameter[EQ]bar
# This is the default serialization style for query parameters
# so you can omit these keywords if you wish
style: form
explode: true
请注意,发送请求时会将< code>[和< code>]字符百分比编码为< code>[和< code>],因为根据RFC 3986,它们是保留字符。
url?search=FirstParameter%5BEQ%5Dfoo
后端服务器应该将<code>〔…〕
我试图使用“swagger jaxrs maven”插件从源代码生成RESTful API文档。 我关注了这个网站:swagger-jaxrs-maven 但是maven抱怨它找不到这个插件,所以我在maven中央存储库中搜索了它 它只在groupId com下找到它。绿色意见。大摇大摆所以我做了相应的修改。 但现在我发现了这个错误: [错误]无法执行目标com。绿色意见。招摇过市:jaxrs g
我已经按照下面的链接使用spring的Swagger为我的REST服务创建API文档。 http://jakubstas.com/spring-jersey-swagger-configuration/#comment-1726 一切都很顺利,但当我试图使用url http://localhost:8080/rest/api-docs访问swagger的api文档时,我发现无法读取swagger
问题内容: 我正在尝试在Django中开发示例项目,并且在运行syncdb命令时遇到错误。 这是我的项目结构的样子: / Users / django_demo / godjango / bookings: 我的manage.py文件如下: 我的PYTHONPATH和DJANGO_SETTINGS_MODULE设置如下 我的WSGI.py文件如下所示: 当我运行python manage.py s
我试图在具有动态输入字段的pdf表单中设置值,但流编写器不断出错。 我研究了填写表格(http://mail-archives.apache.org/mod_mbox/pdfbox-users/201510.mbox/browser)的步骤,并阅读了类似的问题结合XFA与PDFBox和PDFBox臃肿的PDF文件大小 有什么不同的方法吗?有什么建议可以引导我走向正确的方向吗? 这是我的代码 这就是
我在设置kubernetes ingress-nginx时遇到了麻烦,以便在外部公开我的应用程序。下面是我所做的步骤: 应用程序部署: 创建了名为Ingress的命名空间 部署了statefulset集资源,用于在入口命名空间中描述我的应用程序(我们称之为testapp) 创建了ClusterIP服务,使我的应用程序在kube集群(testapp)中的入口命名空间中可用 入口nginx设置: nu
我正在尝试执行以下操作以避免稍后未选中的转换: 强制取消行上未选中得强制转换: 我如何做到这一点而不需要抑制?