Параметр contact
Параметр contact передаётся в конструктор класса FastAPI.
Он принимает словарь с контактными данными автора или команды,
поддерживающей приложение. Эти сведения попадают в OpenAPI-схему
и отображаются в документации, которую FastAPI генерирует автоматически.
Чаще всего указывают имя, ссылку на сайт и адрес электронной почты.
Синтаксис
app = FastAPI(contact={
'name': '...',
'url': '...',
'email': '...'
})
Словарь contact поддерживает три ключа:
name - имя автора или организации,
url - ссылка на сайт или страницу поддержки,
email - адрес электронной почты.
Все ключи необязательны, но обычно заполняют хотя бы имя.
Пример
Давайте создадим приложение и укажем контактные данные автора:
from fastapi import FastAPI
app = FastAPI(
title='My API',
contact={
'name': 'John Doe',
'url': 'https://example.com/contact/',
'email': 'john@example.com'
}
)
@app.get('/')
def index():
return {'text': 'hello'}
Запустим сервер командой:
uvicorn main:app --reload
Теперь откроем страницу /docs.
В нижней части документации появится блок с именем автора,
ссылкой и адресом электронной почты.
Пример
Давайте посмотрим, как контактные данные выглядят в OpenAPI-схеме. Запросим её через тестовый клиент:
from fastapi import FastAPI
from fastapi.testclient import TestClient
app = FastAPI(
title='My API',
contact={
'name': 'John Doe',
'url': 'https://example.com/contact/',
'email': 'john@example.com'
}
)
@app.get('/')
def index():
return {'text': 'hello'}
client = TestClient(app)
res = client.get('/openapi.json').json()
print(res['info']['contact'])
Результат выполнения кода:
{'name': 'John Doe', 'url': 'https://example.com/contact/', 'email': 'john@example.com'}
Ключ contact находится внутри объекта info
вместе с заголовком и версией приложения.
Смотрите также
-
класс
FastAPI,
который принимает параметр contact в конструкторе -
параметр
license_info,
который задаёт лицензию API в документации -
параметр
description,
который задаёт описание приложения -
параметр
servers,
который задаёт список серверов для API