РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
217 of 307 menu

Атрибут scheme_name

Атрибут scheme_name применяется к экземпляру класса OAuth2PasswordBearer и хранит строку с названием схемы безопасности. Это название отображается в интерактивной документации Swagger UI в разделе авторизации, а также попадает в генерируемую OpenAPI-схему в поле securitySchemes. Если параметр не задан при создании объекта, FastAPI автоматически подставляет имя 'OAuth2PasswordBearer'.

Атрибут доступен только для чтения и устанавливается один раз при инициализации объекта OAuth2PasswordBearer.

Синтаксис

oauth2_scheme = OAuth2PasswordBearer( tokenUrl='token', scheme_name='MyScheme' ) oauth2_scheme.scheme_name

Пример

Давайте создадим экземпляр OAuth2PasswordBearer и выведем значение атрибута scheme_name:

from fastapi import FastAPI from fastapi.security import OAuth2PasswordBearer app = FastAPI() oauth2_scheme = OAuth2PasswordBearer( tokenUrl='token', scheme_name='MyScheme' ) @app.get('/') def index(): return {'scheme_name': oauth2_scheme.scheme_name}

Результат выполнения кода:

{"scheme_name": "MyScheme"}

Пример

Если параметр scheme_name не передан, используется значение по умолчанию:

from fastapi import FastAPI from fastapi.security import OAuth2PasswordBearer app = FastAPI() oauth2_scheme = OAuth2PasswordBearer(tokenUrl='token') @app.get('/') def index(): return {'scheme_name': oauth2_scheme.scheme_name}

Результат выполнения кода:

{"scheme_name": "OAuth2PasswordBearer"}

Пример

Давайте используем scheme_name вместе с защищённым маршрутом, чтобы имя схемы отображалось в Swagger UI:

from fastapi import FastAPI, Depends from fastapi.security import OAuth2PasswordBearer app = FastAPI() oauth2_scheme = OAuth2PasswordBearer( tokenUrl='token', scheme_name='ArticleAuth' ) @app.get('/items/') def read_items(token: str = Depends(oauth2_scheme)): return {'token': token}

После запуска приложения на странице /docs в разделе авторизации будет отображаться название схемы 'ArticleAuth'.

Смотрите также

  • класс OAuth2PasswordBearer,
    который реализует OAuth2-авторизацию по паролю
  • атрибут tokenUrl,
    который задаёт URL для получения токена
  • атрибут scopes,
    который задаёт доступные области авторизации
  • функция Depends,
    которая внедряет зависимость авторизации в маршрут
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить