FastAPI OAuth2. Auth ErrorError: Not Found

Создаю API не первый раз, но такая ошибка в первый раз.

Использую официальную документацию по FastAPI, до этого делал всё в одном файле и использовал MongoDB, сейчас использую SQLite.

Проблема в том, когда пытаешься авторизоваться возвращается ошибка 404

В терминале:

INFO: 127.0.0.1:59192 - "POST /token HTTP/1.1" 404 Not Found

В Swagger UI:

Auth ErrorError: Not Found

Методами проб понял, что код доходит до момента определения объекта класса OAuth2PasswordBearer но это не точно.

вот код:

oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")

def get_current_user(token: str = Depends(oauth2_scheme)):
    credentials_exception = HTTPException(
        status_code=status.HTTP_401_UNAUTHORIZED,
        detail="Could not validate credentials",
        headers={"WWW-Authenticate": "Bearer"},
    )
    try:
        payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM])
        email: str = payload.get("sub")
        if email is None:
            raise credentials_exception
        token_data = TokenData(email=email)
    except JWTError:
        raise credentials_exception
        
    return token_data.email
@router.get("/users/me/", response_model=schemas.User)
def read_users_me(token: schemas.UserCreate = Depends(auth_alg.get_current_user), db: Session = Depends(get_db)):
    user = crud.get_user_by_email(db, email=token)
    if user is None:
        raise HTTPException(status_code=400, detail="ERROR")
    return user
def get_user_by_email(db: Session, email: str):
    return db.query(models.User).filter(models.User.email == email).first()
class UserBase(BaseModel):
    email: str


class UserCreate(UserBase):
    password: str


class User(UserBase):
    id: int
    is_employe: bool


    class Config:
        orm_mode = True

Ответы (0 шт):