#8 Удаление клиента ~ 5 мин
В этом упражнении мы научимся удалять клиента. Как и прежде, разделим упражнение на составные части:
- получим список всех клиентов (GET)
- выберем идентификатор одного клиента для удаления
- вызовем эндпоинт DELETE с выбранным идентификатором
- получим список всех клиентов, чтобы убедиться в удалении искомого
Упражнение:
- Начнем со спецификации
- Проверим эндпоинт GET /customers и вызовем его в Httpie.io. Если мы забыли, как это делается – обращаемся к упражнению #3
- Из списка клиентов скопируйте идентификатор клиента, которого хотите удалить. В идеале это тот же идентификатор клиента, который вы создали в #6 «Создание клиента», чтобы не мешать другим участникам курса
- Возвращаемся к спецификации и читаем описание эндпоинта DELETE. Давайте посмотрим, что у него «внутри»
- В секции «Parameters» (параметры) эндпоинта DELETE /customers/{id} мы видим, что существует один обязательный параметр – «id». Мы видим также, что это параметр пути (path-parameter), поэтому он относится к части {id} URL-адреса /customers/{id}. Никаких других входных данных не требуется
- Вернёмся в Httpie.io
- В Httpie.io либо открываем новый запрос, либо повторно используем старый
- Выбираем HTTP метод DELETE
- По сравнению с описанием в Swagger, в URL-адресе отсутствует часть {id} внутри URL-адреса. Поэтому мы расширяем URL-адрес с идентификатором, который мы скопировали на шаге 3 этого упражнения. Это должно выглядеть примерно так: DELETE http://url-to-api/customers/3790dcbe-ff08-4f7a-82f6-fd963d032095
- Нажмите кнопку «Send» в Httpie.io, чтобы выполнить запрос
- Проверьте полученный статус код HTTP. Это должен быть HTTP 204 OK. Помните, что ответы HTTP 204 не имеют тела ответа
- Снова вызовите конечную точку GET /customers, как на шаге 2. Проверьте, существует ли еще клиент. Вы не должны быть в состоянии найти его больше
- Вызов GET /customers/{id} с использованием идентификатора клиента, который был удален, также должен привести к HTTP 404 Not Found
Подсказки
-
Следите за сообщениями типа «There might be too much traffic or configuration error»
- Повторное использование запроса Httpie.io является потенциальным источником ошибок. Особенно когда вы переключаетесь между GET, PUT, POST и обратно, вы можете столкнуться с ошибками. В нашем случае API может сказать, что на API «too much traffic» (слишком много трафика). Это сообщение об ошибке вводит в заблуждение. Настоящая причина получения этой ошибки заключается в том, что вы, возможно, забыли удалить тело запроса, которое GET API не ожидает и не может интерпретировать. Самое простое решение для устранения такого рода ошибок — либо удалить тело запроса, либо начать с чистого запроса Httpie.io.