git clone git@github.com:Umiacha/api_final_yatube.git
Перейдите в директорию проекта:
cd api_final_yatube
Установить виртуальное окружение:
python3 -m venv venv
И активировать его (пример для bash):
. venv/bin/activate
Установить зависимости из файла requirements.txt:
pip install -r requirements.txt
Выполнить миграции:
python manage.py migrate
Запустить проект:
python manage.py runserver
https://127.0.0.1:8000/redoc/
А благодаря Browsable API можно отправлять запросы и читать ответы прямо в браузере. Для этого достаточно открыть желаемый URL-адрес в отдельной вкладке. Все эндпоинты доступны на чтение анонимным пользователям (за исключением api/follow/.*$. Он только для авторизованных), однако для создания, изменения или удаления объектов необходимо быть авторизованным.
Для верификации используются JWT-токены. Для получения такого нужно, чтобы ваш аккаунт был добавлен в базу данных проекта. Это пока что возможно только через админ-панель Django или CLI Django.
Самый простой путь -- создать суперпользователя, который даст доступ и к админ-панели, и к запросам сервису:
python manage.py createsuperuser
После этого необходимо отправить JSON с ключами username и password вашего пользователя на адрес:
https://127.0.0.1/api/v1/jwt/create/
Полученный access-токен теперь и используем для доступа к сервису, передавая его в заголовках запроса в формате:
"Authorization: Bearer <ваш токен>"