Клиент может определить успех запроса по следующим признакам:
- Код статуса HTTP: Наиболее надежный способ. Коды в диапазоне от 200 до 299 (например, 200 OK, 201 Created, 204 No Content) указывают на успешное выполнение запроса. Коды 4xx (ошибки клиента) и 5xx (ошибки сервера) означают неудачу.
- Тело ответа: В успешном ответе может содержаться ожидаемая полезная нагрузка (например, JSON-данные, XML, HTML). Отсутствие или unexpected content может указывать на проблему, даже при успешном коде статуса.
- Заголовки ответа: Некоторые заголовки (например,
Content-Type, Content-Length) могут подтверждать тип и размер полученных данных.
- Обработка исключений: На стороне клиента, при возникновении сетевых ошибок или таймаутов, будут подняты исключения, которые следует обрабатывать.
Пример проверки кода статуса в Python с использованием библиотеки requests:
python
Сводная таблица кодов статуса HTTP:
| Диапазон | Описание | Пример |
|---|
| 1xx | Информационные | 100 Continue |
| 2xx | Успех | 200 OK |
| 3xx | Перенаправление | 301 Moved Permanently |
| 4xx | Ошибка клиента | 404 Not Found |
| 5xx | Ошибка сервера | 500 Internal Server Error |