gpt4 book ai didi

swagger - 如何在 Swagger UI 中发送带有请求的自定义 header ?

转载 作者:行者123 更新时间:2023-12-03 05:45:34 27 4
gpt4 key购买 nike

我在 API 中有一些端点 - /user/login/products

在 Swagger UI 中,我将电子邮件密码发布到/user/login,作为响应,我收到一个 token 字符串。

然后,我可以从响应中复制 token ,并希望将其用作对所有网址(如果存在)的请求中的 Authorization header 值,以及 /products 作为一个例子。

我是否应该在 Swagger UI 页面上的某个位置手动创建文本输入,然后将 token 放在那里并以某种方式注入(inject)请求中,或者是否有工具可以更好地管理它?

最佳答案

您可以向请求添加 header 参数,Swagger-UI 会将其显示为可编辑文本框:

swagger: "2.0"
info:
version: 1.0.0
title: TaxBlaster
host: taxblaster.com
basePath: /api
schemes:
- http

paths:

/taxFilings/{id}:

get:
parameters:
- name: id
in: path
description: ID of the requested TaxFiling
required: true
type: string
- name: auth
in: header
description: an authorization header
required: true
type: string
responses:
200:
description: Successful response, with a representation of the Tax Filing.
schema:
$ref: "#/definitions/TaxFilingObject"
404:
description: The requested tax filing was not found.

definitions:
TaxFilingObject:
type: object
description: An individual Tax Filing record.
properties:
filingID:
type: string
year:
type: string
period:
type: integer
currency:
type: string
taxpayer:
type: object

Swagger-UI with auth param text box

您还可以添加类型为 apiKey 的安全定义:

swagger: "2.0"
info:
version: 1.0.0
title: TaxBlaster
host: taxblaster.com
basePath: /api
schemes:
- http

securityDefinitions:
api_key:
type: apiKey
name: api_key
in: header
description: Requests should pass an api_key header.

security:
- api_key: []

paths:

/taxFilings/{id}:

get:
parameters:
- name: id
in: path
description: ID of the requested TaxFiling
required: true
type: string

responses:
200:
description: Successful response, with a representation of the Tax Filing.
schema:
$ref: "#/definitions/TaxFilingObject"
404:
description: The requested tax filing was not found.

definitions:
TaxFilingObject:
type: object
description: An individual Tax Filing record.
properties:
filingID:
type: string
year:
type: string
period:
type: integer
currency:
type: string
taxpayer:
type: object

securityDefinitions 对象定义安全方案。

security 对象(在 Swagger–OpenAPI 中称为“安全要求”)将安全方案应用于给定的上下文。在我们的例子中,我们通过将安全要求声明为顶级来将其应用到整个 API。我们可以选择在各个路径项和/或方法中覆盖它。

这将是指定安全方案的首选方式;它替换了第一个示例中的 header 参数。不幸的是,Swagger-UI 没有提供文本框来控制这个参数,至少在我目前的测试中是这样。

关于swagger - 如何在 Swagger UI 中发送带有请求的自定义 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41180615/

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