Yatube - проект социальной сети. «API для Yatube» расширяет возможности социальной сети. Новый функционал позволяет пользователям публиковать свои посты и управлять подписками через программный интерфейс взаимодействия.
- Получение, создание, обновление, удаление публикаций.
- Получение, создание, обновление, удаление комментариев к публикациям.
- Просмотр сообществ и детальной информации о них.
- Отслеживание подписок на авторов, а так же возможность подписки на интересующего автора поста.
- Получение, обновление и проверка JWT авторизации.
- Python
- Django
- Django REST Framework
- Simple JWT
- Клонируйте репозитроий с проектом:
git clone [email protected]:Fedor-new-Hope/api_final_yatube.git
- Установить виртуальное окружение для проекта:
python -m venv venv
source venv/Scripts/activate
pip install -r requirements.txt
- Выполните миграции:
python manage.py migrate
- Запустите сервер:
python manage.py runserver
POST-запрос с токеном, добавление новой публикации в коллекцию публикаций.
POST http://localhost:port/api/v1/posts/
{
"text": "Однажды в студеную зимнюю пору, я из лесу вышел, был сильный мороз!",
"group": 1
}
Ответ:
{
"id": 9,
"author": "root",
"text": "Однажды в студеную зимнююю пору, я из лесу вышел, был сильный мороз!",
"pub_date": "2021-09-22T02:37:44.494905Z",
"image": null,
"group": 1
}
GET-запрос, получение информации о сообществе по id=2.
GET http://localhost:port/api/v1/groups/2/
Ответ:
{
"id": 2,
"title": "group2",
"slug": "group2",
"description": "group2"
}
POST-запрос, подписка авторизованного пользователя user=root
от имени которого сделан запрос на автора интересующей публикации following=admin
.
POST http://localhost:port/api/v1/follow/
{
"following": "admin"
}
Ответ:
{
"id": 6,
"user": "root",
"following": "admin"
}