Quellcode durchsuchen

login修改為email

zooey vor 1 Jahr
Ursprung
Commit
45bcbaa2e3
1 geänderte Dateien mit 5 neuen und 4 gelöschten Zeilen
  1. 5 4
      app/api/users.py

+ 5 - 4
app/api/users.py

@@ -30,7 +30,7 @@ async def query_user(user_id: str):
     :param user_id: E-Mail of the user
     :return: None or the user object
     """
-    result = await User.filter(username=user_id).first()
+    result = await User.filter(email=user_id).first()
     if not result:
         print('[]')
         return []
@@ -40,7 +40,7 @@ async def query_user(user_id: str):
 
 @users.post("/login")
 async def login(data: OAuth2PasswordRequestForm = Depends()):
-    email = data.email
+    email = data.username
     password = data.password
 
     user = await query_user(email)
@@ -50,12 +50,13 @@ async def login(data: OAuth2PasswordRequestForm = Depends()):
     )
     if not user:
         # you can return any response or error of your choice
-        raise InvalidCredentialsException
+        return {"message":"查無此人"}
 
     # elif password != user.password:
     #     raise InvalidCredentialsException
     else:
-        if bcrypt.checkpw(user.password.encode('utf-8'), password):
+        stored_hashed_password = user.password.encode('utf-8')
+        if bcrypt.checkpw(password.encode('utf-8'),stored_hashed_password):
             return {'access_token': access_token}
         else:
             return {"message": "Invalid username or password"}