[NT] (https://github.com/NikTimo) Проект API с основными фукнциями для блог-платформы Yatube. В рамках API реализованыразличные функции для авторизованных пользователей и гостей, как:
- Получение списка постов с выборкой
- Публикация новых постов
- Редактирование сущетсующих постов
- Работа с комментариями: получение списка, публикация, редактирование.
- Механизм подписки
- Python v. 3.9
- Django v. 3.2.16
- DRF v.3.14.0
- Djoser + JWT
Скачайте проект удобным способов по [ссылке.] (https://github.com/NikTimo/api_final_yatube) Перейдите в директорию проекта и выполните код ниже: ''' python3.9 -m venv venv source venv/bin/activate pip install -r requirements.txt python yatube_api/manage.py runserver '''
Описание эндпойтов с примерами запросов доступно после запуска сервера по адресу: http://127.0.0.1:8000/redoc
[POST].../api/v1/jwt/create/
{
"username": "ExampleUsername",
"password": "ExamplePassword"
}
{"refresh": "Refresh Token",
"access": "Access Token"
}
Для неавторизованных пользователей работа с API доступна в режиме чтения, что-либо изменить или создать не получится.
GET api/v1/posts/ - все публикации, при необходимости доступна пагинация
GET api/v1/posts/{id}/ - публикация по id
GET api/v1/groups/ - спискок доступных сообществ
GET api/v1/groups/{id}/ - сообщество по id
GET api/v1/{post_id}/comments/ - все комментарии к публикации
GET api/v1/{post_id}/comments/{id}/ - комментарии к публикации по id
- Для создания публикации используем:
POST /api/v1/posts/ - создание нового поста