#8 Удаление клиента ~ 5 мин

В этом упражнении мы научимся удалять клиента. Как и прежде, разделим упражнение на составные части:

  • получим список всех клиентов (GET)
  • выберем идентификатор одного клиента для удаления
  • вызовем эндпоинт DELETE с выбранным идентификатором
  • получим список всех клиентов, чтобы убедиться в удалении искомого

Упражнение:

  1. Начнем со спецификации
  2. Проверим эндпоинт GET /customers и вызовем его в Httpie.io. Если мы забыли, как это делается – обращаемся к упражнению #3
  3. Из списка клиентов скопируйте идентификатор клиента, которого хотите удалить. В идеале это тот же идентификатор клиента, который вы создали в #6 «Создание клиента», чтобы не мешать другим участникам курса
  4. Возвращаемся к спецификации и читаем описание эндпоинта DELETE. Давайте посмотрим, что у него «внутри»
  5. В секции «Parameters» (параметры) эндпоинта DELETE /customers/{id} мы видим, что существует один обязательный параметр – «id». Мы видим также, что это параметр пути (path-parameter), поэтому он относится к части {id} URL-адреса /customers/{id}. Никаких других входных данных не требуется
  6. Вернёмся в Httpie.io
  7. В Httpie.io либо открываем новый запрос, либо повторно используем старый
  8. Выбираем HTTP метод DELETE
  9. По сравнению с описанием в Swagger, в URL-адресе отсутствует часть {id} внутри URL-адреса. Поэтому мы расширяем URL-адрес с идентификатором, который мы скопировали на шаге 3 этого упражнения. Это должно выглядеть примерно так: DELETE http://url-to-api/customers/3790dcbe-ff08-4f7a-82f6-fd963d032095
  10. Нажмите кнопку «Send» в Httpie.io, чтобы выполнить запрос
  11. Проверьте полученный статус код HTTP. Это должен быть HTTP 204 OK. Помните, что ответы HTTP 204 не имеют тела ответа
  12. Снова вызовите конечную точку GET /customers, как на шаге 2. Проверьте, существует ли еще клиент. Вы не должны быть в состоянии найти его больше
  13. Вызов 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.