Blog App — это веб-приложение на Django для создания, управления и просмотра блог-постов с аутентификацией через JWT-токены.
djangorestframework-simplejwt
)git clone https://github.com/RustamovAkrom/Blog-2.git
cd Blog-2
Создайте и активируйте виртуальное окружение:
python -m venv venv
source venv/bin/activate # для Linux/macOS
venv\Scripts\activate # для Windows
Установите необходимые зависимости:
pip install -r requirements.txt
Создайте файл .env
в корне проекта и добавьте туда настройки для базы данных и JWT. Пример:
#!/bin/bash
SECRET_KEY=<your django secret key>
DEBUG=True # default
ALLOWED_HOSTS=localhost,127.0.0.1 # default
# `core.settings.development` or `core.setting.production`
DJANGO_SETTINGS_MODULE=core.settings.development # default
PRIVATE_KEY_PATH=security_settings/private_key.pem # default
PUBLIC_KEY_PATH=security_settings/public_key.pem # default
DATABASE_ENVIRON=sqlite # sqlite or postgres
# PostgreSQL configruations
DATABASE_NAME=<your database name>
DATABASE_USER=<your database user>
DATABASE_PASSWORD=<your database password>
DATABASE_HOST=localhost # default
DATABASE_PORT=5432 # default
ADMIN_USERNAME=admin # default
ADMIN_PASSWORD=password # default
ADMIN_EMAIL=admin@example.com # default
Примените миграции и создайте суперпользователя для доступа к админ-панели:
python manage.py migrate
python manage.py createadmin
Запустите сервер разработки:
python manage.py runserver
Теперь ваше приложение доступно по адресу: http://127.0.0.1:8000
Blog App использует JWT для аутентификации. При входе в систему клиент получает два токена:
/api/token/
.Используйте Access Token для доступа к защищённым эндпоинтам, добавляя его в заголовок запросов:
Authorization: Bearer <access_token>
/api/token/refresh/
, отправляя Refresh Token в теле запроса.Для ускорения работы Blog App можно использовать кэширование JWT-токенов. Этот механизм позволяет кэшировать данные пользователей для быстрого доступа без необходимости каждый раз проверять токен.
Этот проект лицензирован на условиях MIT License.