diff options
Diffstat (limited to 'app/utils.py')
-rw-r--r-- | app/utils.py | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/app/utils.py b/app/utils.py deleted file mode 100644 index 22d7058..0000000 --- a/app/utils.py +++ /dev/null @@ -1,32 +0,0 @@ -from pathlib import Path -from typing import Annotated - -from fastapi import Request, Header, Depends -import httpx - - -def get_avatar_urls() -> list[str]: - path = Path("./static") / "avatars" - if not path.exists(): - path.mkdir() - - return sorted([str(jpg_avatar) for jpg_avatar in path.glob("*.jpg")]) - - -def get_client_host( - request: Request, x_real_ip: Annotated[str | None, Header()] = None -) -> str: - if x_real_ip: - return x_real_ip - return request.client.host - - -async def get_client_geo(client_host: Annotated[str, Depends(get_client_host)]) -> dict: - async with httpx.AsyncClient() as client: - response = await client.get( - # использование https платная опция сервиса, инфо тут https://members.ip-api.com/ - url="http://ip-api.com/json/{}".format(client_host), - params={"lang": "ru"}, - ) - data = response.json() - return data |