gpt4 book ai didi

openapi - 如何根据 OpenAPI 3.0 中的路径参数改变 requestBody 类型?

转载 作者:行者123 更新时间:2023-12-05 02:58:12 25 4
gpt4 key购买 nike

根据 Swagger send body and formData parameter,在 OpenAPI 2.0 中,in: bodyin: formData 参数不能同时存在用于同一操作和 OpenAPI 2.0 Specification .这是有道理的。

但我使用的是 OpenAPI 3.0,我想知道是否有一种方法可以根据路径参数切换 requestBody?当storepath1时,requestBody应该使用application/json的内容;当storepath2 时,requestBody 应该使用multipart/form-data 的内容。

  /customs/{store}:
post:
description: Customs server calls Nomad to receive the filing result of one
order
operationId: post_customs_callback
parameters:
- description: ID of the store.
explode: true
in: path
name: store
required: true
schema:
type: string
style: simple
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties: # Request parts
openReq:
type: string

# application/json:
# schema:
# type: string
description: Order details

最佳答案

OpenAPI 规范没有办法根据特定参数值来改变请求/响应主体。但是,在您的场景中,您可以改用两个非参数化路径 – /customs/path1 用于 JSON 请求,/customs/path2 用于多部分请求。

openapi: 3.0.0
...

paths:
/customs/path1:
post:
...
requestBody:
required: true
content:
application/json:
schema:
...

/customs/path2:
post:
...
requestBody:
required: true
content:
multipart/form-data:
schema:
...

关于openapi - 如何根据 OpenAPI 3.0 中的路径参数改变 requestBody 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59234495/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com