Demosthene-OR commited on
Commit
067ab3c
1 Parent(s): b8ed5a3

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +4 -15
main.py CHANGED
@@ -85,26 +85,15 @@ async def validation_exception_handler(request: Request, exc: ValidationError):
85
  },
86
  )
87
 
88
- # Définir le schéma de sécurité
89
- security_scheme = {
90
- "type": "http",
91
- "scheme": "basic"
92
- }
93
-
94
- # Définir les informations sur la sécurité
95
- security_requirements = [
96
- {
97
- "basicAuth": []
98
- }
99
- ]
100
 
101
  # Fonction pour vérifier l'authentification de l'utilisateur
102
  def authenticate(authorization: str = Header(None)):
103
  if not authorization:
104
  raise HTTPException(status_code=401, detail="Utilisateur non authorisé1")
105
  try:
106
- scheme, credentials = Authorization.split()
107
- if scheme != 'Basic':
108
  raise HTTPException(status_code=401, detail="Utilisateur non authorisé "+scheme)
109
  username, password = credentials.split(":")
110
  if username not in users_credentials or users_credentials[username] != password:
@@ -119,7 +108,7 @@ def check_api():
119
  return {'message': "L'API fonctionne"}
120
 
121
  # Endpoint pour récupérer les questions en fonction du type de test (use) et des catégories (subject) spécifiés
122
- @api.get('/questions', name="Récupération des questions pour un QCM")
123
  def get_questions(use: str,
124
  subject: str,
125
  num_questions: int,
 
85
  },
86
  )
87
 
88
+ security_scheme = HTTPBasic()
 
 
 
 
 
 
 
 
 
 
 
89
 
90
  # Fonction pour vérifier l'authentification de l'utilisateur
91
  def authenticate(authorization: str = Header(None)):
92
  if not authorization:
93
  raise HTTPException(status_code=401, detail="Utilisateur non authorisé1")
94
  try:
95
+ scheme, credentials = authorization.split()
96
+ if scheme.lower != 'basic':
97
  raise HTTPException(status_code=401, detail="Utilisateur non authorisé "+scheme)
98
  username, password = credentials.split(":")
99
  if username not in users_credentials or users_credentials[username] != password:
 
108
  return {'message': "L'API fonctionne"}
109
 
110
  # Endpoint pour récupérer les questions en fonction du type de test (use) et des catégories (subject) spécifiés
111
+ @api.get('/questions', name="Récupération des questions pour un QCM", security=[{"basicAuth": []}])
112
  def get_questions(use: str,
113
  subject: str,
114
  num_questions: int,