API Избранные люди (Мои люди) - mesto-co/core GitHub Wiki

пробы ссылки на карточку

/v1/user/friend/:friendId

Параметр Значение
Method POST
Authorization +
Query parameters -
  • Получить авторизацию пользователя
  • Проверить, что токен не просрочен, если просрочен вернуть ошибку 401
  • Получить id пользователя которого хотят добавить в избранное из Path параметра,
  • Сделать обращение в список избранных пользователей по userId == user.id && friendId == rq.friendId, если запись найдена то вернуть ответ 208
  • Если не найдена, то добаить запись в таблицу избранных пользователей c userId = user.id и friendId = rq.friendId

Пример ответа

HTTPStatos.ok

/v1/user/friend/:friendId

Параметр Значение
Method DELETE
Authorization +
Query parameters -
  • Получить авторизацию пользователя
  • Проверить, что токен не просрочен, если просрочен вернуть ошибку 419 - Authentication Timeout
  • Получить id пользователя которого хотят добавить в избранное из Path параметра,
  • Сделать обращение в список избранных пользователей по userId == user.id && friendId == rq.friendId, если запись не найдена то вернуть ответ 208
  • Если найдена, то удалить запись из таблицы избранных пользователей

Пример ответа

HTTPStatos.ok

/v1/user/friend

Параметр Значение
Method GET
Authorization +
Query parameters -
  • Получить авторизацию пользователя
  • Проверить, что токен не просрочен, если просрочен вернуть ошибку 419 - Authentication Timeout
  • Получить из БД список избранных пользователей

Пример ответа

[
    {
        "email": "[email protected]",
        "id": 2,
        "isFriend": true,
        "name": ""
    },
    {
        "email": "[email protected]",
        "isFriend": true,
        "role": "iOS Developer",
        "id": 4,
        "imagePath": "https://sun9-44.userapi.com/c849324/v849324265/15375e/9WGbb10iBfo.jpg",
        "name": "Mikhail Seregin"
    },
    {
        "name": "",
        "isFriend": true,
        "id": 76,
        "role": "",
        "email": "[email protected]"
    }
]