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

Атрибут password

Класс HTTPBasicCredentials создаётся зависимостью HTTPBasic и содержит данные, переданные клиентом в заголовке Authorization. Атрибут password хранит пароль в виде строки. Он читается напрямую через точку и применяется для сверки с паролем из базы данных.

Синтаксис

credentials.password

Пример

Давайте извлечём логин и пароль из зависимости HTTPBasic и вернём их в ответе:

from fastapi import FastAPI, Depends from fastapi.security import HTTPBasic, HTTPBasicCredentials app = FastAPI() security = HTTPBasic() @app.get('/user') def user(credentials: HTTPBasicCredentials = Depends(security)): return { 'username': credentials.username, 'password': credentials.password }

Результат выполнения кода при логине 'user' и пароле 'abcde':

{"username": "user", "password": "abcde"}

Пример

Давайте сверим пароль из атрибута password с паролем из базы и вернём приветствие:

from fastapi import FastAPI, Depends, HTTPException from fastapi.security import HTTPBasic, HTTPBasicCredentials app = FastAPI() security = HTTPBasic() users = {'user': 'abcde'} @app.get('/login') def login(credentials: HTTPBasicCredentials = Depends(security)): if users.get(credentials.username) != credentials.password: raise HTTPException(status_code=401, detail='Invalid credentials') return {'text': 'hello'}

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

{"text": "hello"}

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

  • класс HTTPBasicCredentials,
    который хранит данные Basic авторизации
  • атрибут username,
    который хранит логин из Basic авторизации
  • класс HTTPBasic,
    который создаёт зависимость для Basic авторизации
  • класс Depends,
    который внедряет зависимость в обработчик
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить