Możesz dodać parametr nagłówka do Państwa potrzeb, a Swagger-UI pokaże go jako pola tekstowego edycji:
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
Można również dodać definicję bezpieczeństwa z rodzaju 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
Obiekt securityDefinitions
definiuje schematy zabezpieczeń.
Obiekt security
(zwany "wymaganiami bezpieczeństwa" w Swagger-OpenAPI) stosuje schemat zabezpieczeń do danego kontekstu. W naszym przypadku stosujemy go do całego API, deklarując wymóg bezpieczeństwa na najwyższym poziomie. Możemy opcjonalnie zastąpić go w ramach poszczególnych elementów ścieżki i/lub metod.
Byłby to preferowany sposób, w jaki należy określić swój system zabezpieczeń; i zastępuje parametr nagłówka z pierwszego przykładu. Niestety, Swagger-UI nie oferuje pola tekstowego do kontrolowania tego parametru, przynajmniej w moich testach.
Cześć dzięki za dzielenie się tym, że to właśnie to, co potrzebne. Czy istnieje sposób wyłączenia go dla niektórych metod API? Na przykład logowanie użytkownika nie wymagałoby przekazania nagłówka jako zwrócenia tokena autoryzacji. Ten dodatek jest "MyHeaderField" do wszystkich metod API dokumentów Swagger. –
@NeilHodges to wymyśliłeś. Nawet tego szukam. –
@ gee'K'iran Możesz selektywnie zastosować tę funkcjonalność, sprawdzając parametry operacji i apiDescription i wybierając opcję dodania nagłówka. – Corcus