Чат поддержки
Практикум
Привет! Это поддержка Практикума 👋 Если что-то не получается — постараемся помочь. Пишите в чат или выберите другой способ связи
пт, 2 декабряв 17:21
Мы уже начали заниматься вашим вопросом, ответим в ближайшее время
Практикум

Здравствуйте!

Поддержка не сможет помочь с вопросами, связанными с теорией или задачам из курса «Системный аналитик» — в этой ситуации рекомендуем вам обратиться к вашему преподавателю в чате в Slack.

Если же у вас возникнут иные вопросы — обязательно пишите, будем рады помочь :)

17:24
Выбрать способ связи
Поменять когорту
Перейти в профиль
Выйти из профиля
Добавить аккаунт

Проект 4

спринт Проект 4
Проектирование API
2/2
Процесс проектирования API
Моделирование профиля API
Проект 4. Разработка API для сервиса Otium
6/6
Описание проекта
Часть 1. Интервью с телеканалом
Часть 2. Диаграмма компонентов
Часть 3. Разработка API
Часть 4. Работа с API
Ревью Проекта 4.

Часть 4. Работа с API

На основании профиля API, который вы подготовили в третьей части Проекта, команда разработки подготовила коллекцию запросов для сервиса «Метрики телеканала». Разработчик добавил в неё URL сервиса, параметры запросов и примеры ответов в формате JSON.
В этой части проекта вам предстоит выполнить два задания:
  1. Проверить эту коллекцию на соответствие составленному вами профилю API. Редактировать профиль API или саму коллекцию не требуется. Если API немного отличается от профиля, это не критично. Такие изменения могут вноситься в процессе разработки.
  2. Самостоятельно собрать коллекцию под запрос клиента.

Задание 1

  1. Откройте Postman. С ним вы уже работали в рамках спринта и домашнего задания.
  2. Импортируйте коллекцию запросов, которые подготовила команда разработки для сервиса «Метрики телеканала».
  3. Познакомьтесь с переменными коллекции (variables) — это фиксированные значения, которые использует коллекция. Например, переменной dateFrom соответствует значение 2023-01-20T00:00:00. Это значит, что если в запросе указать параметр со значением dateFrom, то при выполнении запроса этот параметр примет значение, которое было задано в переменной. Для обозначения переменной используются двойные фигурные кавычки. Запрос: GET /statistics?date=dateFrom превратится в запрос: GET /statistics?date=2023-01-20T00:00:00
  1. В коллекции вы найдёте шесть запросов. Эти запросы предоставляют данные, которые хотят получить представители телеканала «Пейзаж ТВ».
    Как и в домашнем задании вы можете ознакомиться с документацией и выполнить каждый запрос. В этом задании вам не нужно устанавливать особые условия окружения, поэтому в поле «Environment» необходимо выставить значение «No environment».
    Обратите внимание, что в работе вы используете мок-сервер, который не имеет бэкэнда. Все ответы на запросы хранятся на сервере в виде JSON и не обрабатываются бэкендом. Поэтому в случае, если в параметрах запроса допущена ошибка, запрос может отработать некорректно. Чтобы избежать таких ситуаций, используется только те параметры и их значения, которые указаны в документации.
  2. Выполните каждый запрос и найдите в ответе информацию, которая соответствует деталям профиля API.
    Например, для выполнения запроса «Статистика просмотра телеканала пользователем» требуется три обязательных параметра. Значения этих параметров являются переменными dateFrom, dateTo, userId. В ответе на этот запрос должна быть предоставлена информация сколько раз и как долго пользователь смотрел телеканал. Эта информация содержится в объекте “viewingDetails”. Количество просмотров соответствует объекту “viewingCount”, а длительность просмотра содержится в объекте “viewingTime”.
Обратите внимание, что в запросе «Кол-во пользователей по периодам» при выборе режима hourly (отображение просмотров по часам) вам потребуется самостоятельно изменить значение параметров запроса:
  • параметр dateFrom должен соответствовать переменной dateHourFrom.
  • параметр dateTo должен соответствовать переменной dateHourTo.

Задание 2

После того как вы проверили запросы на соответствие профилю API, клиент обратился к вам с дополнительной задачей:
«В API сейчас есть все нужные запросы, это хорошо. Но мы хотим вывести на отдельный экран информацию о количестве пользователей, которые смотрели наш канал за определённый период, какие оценки они поставили, и сколько из них добавили наш канал в Избранное и не удалили его за это время. Не могли бы вы собрать для нас нужные запросы, которые эту информацию предоставят?»
Текущее API позволяет получить эту информацию. Вам необходимо выбрать запросы API, которые могут дать нужную информацию, и их параметры. Выбранные запросы нужно собрать в отдельную коллекцию и проверить её выполнение.
Ваша задача:
  1. Скачайте основу коллекции «Part 4 Collection» и импортируйте её.
  2. В коллекции уже прописаны основные переменные: адрес сервера (metricsServer), идентификатор канала (channelId). Но вам нужно добавить еще две: dateFrom и dateTo. Скопируйте значения этих переменных из основной коллекции.
Помните, что в работе вы используете мок-сервер, который не имеет бэкэнда. Все ответы на запросы хранятся на сервере в виде JSON и не обрабатываются бэкендом. Важно скопировать значение переменных из основной коллекции. Если использовать другие значения, ответ придёт с ошибкой.
Не забудьте сохранить внесённые изменения.
  1. Добавьте в коллекцию «Part 4 Collection» те запросы, которые необходимы для решения задачи клиента. Для этого определите запросы, которые вам нужны, создайте их копию и перетащите в коллекцию «Part 4 Collection». Чтобы создать копию запроса, необходимо в меню выбрать поле Duplicate.
Скопированный запрос перетащите в коллекцию «Part 4 Collection» и отредактируйте название метода.
  1. Когда все нужные запросы окажутся в новой коллекции, проведите проверку. Убедитесь, что все параметры запросов соответствуют задаче клиента. Если вы внесли изменения в запрос или его параметры, не забудьте сохранить их.
  1. Далее запустите всю коллекцию целиком. Для этого в меню выберите Run collection.
В открывшемся окне в разделе «Run order» проверьте последовательность вызова запросов. При необходимости скорректируйте её. И запустите коллекцию.
  1. На экране появится результат запуска коллекции. Задание выполнено успешно, если все запросы отработали корректно, получен валидный ответ и параметры запросов соответствуют задаче. Сделайте скриншот получившегося результата.
Если хотя бы один из запросов отработал с результатом «Fail», проверьте корректность запросов и параметров.
  1. Сохраните результаты выполнения задания в папке на Яндекс.Диск: a. Скриншот с результатом запуска коллекции b. Коллекцию с запросами, которую вы сформировали. Для этого в меню коллекции выберите пункт «Export» и экспортируйте коллекцию. Полученный файл в формате JSON добавьте в папку вашего проекта.
Остановитесь на секунду и осознайте, что вы — великолепны!

Курсы

Вводный модуль

Понимание профессии системного аналитика

Разработка требований

Проект 1. Спецификация требований ко второму релизу Chatty

SQL для аналитиков

Моделирование данных

Проект 2. Моделирование данных и работа с базой данных интернет-магазина «Накарабине»

Моделирование процессов

Пользовательские интерфейсы

Agile-практики

Проект 3. Бэклог приложения для сети клиник «Вита»

Трудоустройство

Архитектура системы

Программные интерфейсы

Проект 4

Реализация системы

Поддержка, обслуживание и оценка результатов

Дипломный проект

Дополнительные материалы