#7a Изменение клиентских данных ~ 10 мин

В предыдущем упражнении (#7) мы изменяли данные клиента, передавая полный набор данных. Использование метода PATCH отличается от PUT тем, что мы можем править данные точечно – только то, что требуется изменить.

Порядок действий следующий:

  • Мы используем GET /customers для получения списка всех существующих клиентов
  • Мы выбираем клиента и из вывода копируем идентификатор клиента, данные которого хотим изменить
  • Мы используем конечную точку PATCH /customers/{id} для управления данным клиентом
  • Мы используем конечную точку GET /customers, чтобы проверить результаты

Упражнение:

  1. Сперва мы выбираем клиента, данные которого хотим изменить. Открываем Httpie.io
  2. Выводим список всех клиентов, используя GET /customers. Обращаемся к упражнению #3, если встречаемся со сложностями в выполнении этого задания
  3. Копируем «id» – идентификатор клиента которого хотим изменить. Будет замечательно, если вы выберете именно того клиента, которого создали в предыдущем упражнении
  4. Обратимся к спецификации на портале
  5. Просмотрите документацию по эндпоинту PATCH /customers/{id}. В разделе «Parameters» вы заметите, что эта конечная точка имеет два параметра, помеченных как обязательные: идентификатор (параметр пути | path-parameter) и request body (тело запроса, для которого требуется передать данные в формате JSON)
  6. Переключитесь на Httpie.io и откройте новый запрос (это означает, что ваш запрос GET должен оставаться открытым)
  7. Выберите PATCH в качестве метода HTTP.
  8. Скопируйте базовый путь API и ресурс эндпоинта /customers/{id}
  9. Замените значение {id} конкретным идентификатором, скопированным на шаге 3 этого упражнения
  10. Теперь пришло время добавить содержимое JSON:
    • Переключитесь в Httpie.io на вкладку параметра «Body»
    • Выберите «raw»
    • Переключитесь на ввод «JSON» в раскрывающемся списке
  11. Самый простой способ ввести правильные значения в параметры API — скопировать из примеров Swagger. Это дает нам уверенность, что мы не допускаем опечаток, и экономим время на просмотре сообщений об ошибках. Вы найдете его в разделе «Parameters» и «Request body» конечной точки PATCH /customers/{id}. Скопируйте его и вставьте пример JSON в Httpie.io
  12. Измените данные по своему вкусу. Пробуем поменять только одно из полей, чтобы убедиться, что в отличие от использования метода PUT, данне не обнуляются, если мы их не передаём в сторону сервера. Дважды проверьте схему в Swagger спецификации. Если вы не знаете, как проверить схему, обратитесь к упражнению #2 «Читаем Swagger»
  13. Нажимаем кнопку Send
  14. Проверьте статус код HTTP. Это должно быть HTTP 200. Это говорит вам, что вызов был успешным. Всегда проверяйте ответ сервиса против документации Swagger в разделе «Responses»
  15. Вернитесь к вашему GET-запросу (если вы правильно выполнили шаг 6, GET-запрос все еще должен быть открыт на другой вкладке)
  16. Выполните GET ещё раз
  17. Вы должны увидеть, что данные изменились в соответствии с данными, введенными на шаге 12. Поздравляем! :)