feat: features for bad internet connections
This commit is contained in:
parent
1a1b44743a
commit
8e91724462
2
db.py
2
db.py
@ -12,7 +12,7 @@ from sqlmodel import (
|
||||
with open("db.secrets", "r") as f:
|
||||
db_secrets = f.readline().strip()
|
||||
|
||||
engine = create_engine(db_secrets)
|
||||
engine = create_engine(db_secrets, connect_args={"connect_timeout": 8})
|
||||
del db_secrets
|
||||
|
||||
|
||||
|
12
security.py
12
security.py
@ -9,6 +9,7 @@ from db import engine, User
|
||||
from fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestForm
|
||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||
from passlib.context import CryptContext
|
||||
from sqlalchemy.exc import OperationalError
|
||||
|
||||
|
||||
class Config(BaseSettings):
|
||||
@ -47,10 +48,13 @@ def get_password_hash(password):
|
||||
|
||||
def get_user(username: str | None):
|
||||
if username:
|
||||
with Session(engine) as session:
|
||||
return session.exec(
|
||||
select(User).where(User.username == username)
|
||||
).one_or_none()
|
||||
try:
|
||||
with Session(engine) as session:
|
||||
return session.exec(
|
||||
select(User).where(User.username == username)
|
||||
).one_or_none()
|
||||
except OperationalError:
|
||||
return
|
||||
|
||||
|
||||
def authenticate_user(username: str, password: str):
|
||||
|
Loading…
x
Reference in New Issue
Block a user