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