From 3086d1801de6906cd2345266a926e3d3a53fe305 Mon Sep 17 00:00:00 2001 From: OkunElya Date: Mon, 15 Dec 2025 23:07:46 +1000 Subject: [PATCH] minimal visual improvements --- readme.md | 9 +++++++++ src/app.py | 29 ++++++++++++++++++++--------- 2 files changed, 29 insertions(+), 9 deletions(-) diff --git a/readme.md b/readme.md index 57badde..cdb3078 100644 --- a/readme.md +++ b/readme.md @@ -1 +1,10 @@ К сожалениюя я не любитель PHP, так что всё будет на питоне (Fastapi|Uvicorn) + + +**На сервере Web написать уязвимое веб-приложение Весь проект писать на рабочем столе в папке Фамилия_Web_app, где “Фамилия” - это ваша настоящая фамилия** + +1. Реализовать страницу регистрации пользователей **(1.5 балла)** +2. Реализовать страницу авторизации пользователей **(1.5 балла)** +3. Реализовать **Cookie (2 балла)** +4. Реализовать страницу **“приветствия пользователя”** (она должна выводить текст **“Привет, имя_пользователя”**) (Имя_пользователя, это переменная и должна равняться авторизованному пользователю), доступ на эту страницу только после авторизации **(2 балла)** +5. Обернуть готовое приложение в **Docker (3 балла)** \ No newline at end of file diff --git a/src/app.py b/src/app.py index 79a8aee..902a355 100644 --- a/src/app.py +++ b/src/app.py @@ -15,12 +15,23 @@ app = FastAPI( openapi_url=None # Disable OpenAPI JSON schema ) +STYLES = """ + +""" @app.get("/register", response_class=HTMLResponse) async def register_form(): - return """ + return f""" - Регистрация + Регистрация{STYLES}

Регистрация

@@ -43,9 +54,9 @@ async def register(login: str = Form(...), password: str = Form(...)): response.set_cookie("password", password) return response except sqlite3.IntegrityError: - return HTMLResponse(""" + return HTMLResponse(f""" - Ошибка регистрации + Ошибка регистрации{STYLES}

Login уже существует

Попробовать снова @@ -55,9 +66,9 @@ async def register(login: str = Form(...), password: str = Form(...)): @app.get("/login", response_class=HTMLResponse) async def login_form(): - return """ + return f""" - Вход + Вход{STYLES}

Вход

@@ -80,9 +91,9 @@ async def login(login: str = Form(...), password: str = Form(...)): response.set_cookie("password", password) return response else: - return HTMLResponse(""" + return HTMLResponse(f""" - Ошибка входа + Ошибка входа{STYLES}

Неверные учетные данные

Попробовать снова @@ -101,7 +112,7 @@ async def welcome(request: Request): if user: return f""" - Добро пожаловать + Добро пожаловать{STYLES}

Привет, {login}