← Назад ко всем вопросам

Какие знаешь коды ответов сервера

1️⃣ Как кратко ответить

Коды ответов сервера делятся на пять категорий: информационные (1xx), успешные (2xx), перенаправления (3xx), клиентские ошибки (4xx) и серверные ошибки (5xx). Примеры: 200 OK, 404 Not Found, 500 Internal Server Error.

2️⃣ Подробное объяснение темы

Коды ответов сервера — это числовые коды, которые сервер возвращает в ответ на HTTP-запросы. Они помогают клиенту (например, браузеру) понять, как обработать ответ. Коды делятся на пять категорий, каждая из которых имеет свое назначение.

Информационные коды (1xx)

Эти коды указывают, что запрос был получен и процесс продолжается. Они редко используются в обычной практике.

  • 100 Continue: Клиент может продолжать запрос или игнорировать ответ, если запрос уже завершен.
  • 101 Switching Protocols: Сервер принимает запрос клиента на изменение протокола.

Успешные коды (2xx)

Эти коды означают, что запрос был успешно получен, понят и принят.

  • 200 OK: Запрос успешно выполнен. Это самый распространенный код, который указывает, что все прошло гладко.
  • 201 Created: Запрос успешно выполнен, и в результате был создан новый ресурс.
  • 204 No Content: Запрос успешно выполнен, но в ответе нет содержимого.

Коды перенаправления (3xx)

Эти коды указывают, что клиент должен предпринять дополнительные действия для завершения запроса.

  • 301 Moved Permanently: Запрашиваемый ресурс был окончательно перемещен на новый URL.
  • 302 Found: Ресурс временно находится по другому URL.
  • 304 Not Modified: Ресурс не изменялся с момента последнего запроса. Клиент может использовать кэшированную версию.

Клиентские ошибки (4xx)

Эти коды указывают на ошибки, которые произошли по вине клиента.

  • 400 Bad Request: Сервер не может обработать запрос из-за ошибки клиента (например, синтаксическая ошибка).
  • 401 Unauthorized: Для доступа к ресурсу требуется аутентификация.
  • 403 Forbidden: У клиента нет прав доступа к ресурсу.
  • 404 Not Found: Запрашиваемый ресурс не найден на сервере.

Серверные ошибки (5xx)

Эти коды указывают на ошибки, которые произошли по вине сервера.

  • 500 Internal Server Error: Общая ошибка сервера, когда он не может обработать запрос.
  • 502 Bad Gateway: Сервер, действующий как шлюз или прокси, получил недопустимый ответ от вышестоящего сервера.
  • 503 Service Unavailable: Сервер временно не может обработать запрос (например, из-за перегрузки или технического обслуживания).

Пример использования в AQA

В автоматизированном тестировании (AQA) важно проверять коды ответов сервера, чтобы убедиться, что API или веб-приложение работает корректно. Например, при тестировании REST API можно использовать библиотеку requests в Python для отправки HTTP-запросов и проверки кодов ответов:

import requests
​
# Отправка GET-запроса на сервер
response = requests.get('https://example.com/api/resource')
​
# Проверка кода ответа
if response.status_code == 200:
    print("Запрос успешен, ресурс получен.")
elif response.status_code == 404:
    print("Ресурс не найден.")
else:
    print(f"Получен неожиданный код ответа: {response.status_code}")
  • import requests: Импортируем библиотеку requests, которая позволяет отправлять HTTP-запросы.
  • response = requests.get('https://example.com/api/resource'): Отправляем GET-запрос на указанный URL и сохраняем ответ в переменной response.
  • if response.status_code == 200: Проверяем, равен ли код ответа 200, что означает успешное выполнение запроса.
  • elif response.status_code == 404: Проверяем, равен ли код ответа 404, что означает, что ресурс не найден.
  • else: Обрабатываем все остальные коды ответов, выводя их на экран.

Тема: API и протоколы
Стадия: Tech

🔒 Подпишись на бусти автора и стань Алигатором, чтобы получить полный доступ к функционалу сайта и отслеживать свой прогресс!

Твои заметки