在OpenAPI (Swagger) 2.0中,我们可以这样定义头部参数:
paths:
/post:
post:
parameters:
- in: header
name: X-username但是在OpenAPI 3.0.0中,参数被请求主体替换,我找不到一种方法来定义头参数,这些参数将进一步用于身份验证。
在OpenAPI 3.0.0中定义请求头的正确方式是什么?
发布于 2018-05-01 21:53:10
在OpenAPI 3.0中,标头参数的定义方式与OpenAPI 2.0中相同,只是type已替换为schema
paths:
/post:
post:
parameters:
- in: header
name: X-username
schema:
type: string如果有疑问,请查看Describing Parameters指南。
,但在Swagger 3.0.0中,参数被请求主体所取代。
这仅适用于形状参数和正文参数。其他参数类型(path、query、header)仍定义为parameters。
定义了报头参数,这些参数将进一步用于身份验证。
定义与身份验证相关的参数的更好方法是使用securitySchemes,而不是在parameters中显式定义这些参数。安全方案用于API密钥、应用ID/密码等参数。在您的案例中:
components:
securitySchemes:
usernameHeader:
type: apiKey
in: header
name: X-Username
paths:
/post:
post:
security:
- usernameHeader: []
...https://stackoverflow.com/questions/50117059
复制相似问题