Коды ответа сервера: руководство с примерами использования

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

Коды ответа сервера делятся на несколько групп. Некоторые из них сообщают об успешном выполнении запроса, другие сообщают об ошибках, а некоторые сообщают о перенаправлении.

Группы кодов ответа сервера

Коды ответа сервера

Коды ответа сервера делятся на пять групп:

  • Информационные коды ответа (100-199)
  • Успешные коды ответа (200-299)
  • Коды перенаправления (300-399)
  • Коды ошибок клиента (400-499)
  • Коды ошибок сервера (500-599)

Каждая группа кодов ответа сервера имеет свойственную себе цифру в первой позиции. Первый разряд определяет группу, а оставшиеся два разряда определяют конкретный код ответа.

Информационные коды ответа (100-199)

Информационные коды ответа сообщают клиенту, что сервер принял запрос и продолжает обработку. Обычно, информационные коды ответа используются во время передачи больших объемов данных, чтобы сообщить клиенту о текущем статусе процесса. Клиент обычно не использует эти коды ответа, так как они не сообщают о результатах выполнения запроса.

Примеры информационных кодов ответа сервера:

  • 100 Continue — Этот код ответа сообщает клиенту, что сервер продолжает обработку запроса и ожидает дальнейшей информации от клиента.
  • 101 Switching Protocols — Этот код ответа сообщает клиенту, что сервер переключается на другой протокол, например, при переходе с HTTP на WebSocket.

Успешные коды ответа (200-299)

Успешные коды ответа сообщают клиенту, что сервер успешно обработал запрос. Эти коды ответа сообщают о том, что клиент получил запрошенные данные, выполнился запрошенный действие или что сервер подтвердил отправку данных клиенту.

Примеры успешных кодов ответа сервера:

  • 200 OK — Этот код ответа сообщает клиенту, что сервер успешно обработал запрос и вернул запрошенные данные.
  • 201 Created — Этот код ответа сообщает клиенту, что сервер успешно создал ресурс по указанному URI (Uniform Resource Identifier) и вернул информацию о созданном ресурсе. Например, при создании новой записи в базе данных сервер может вернуть код ответа 201 и URI созданной записи в теле ответа.
  • 204 No Content — Этот код ответа сообщает клиенту, что сервер успешно обработал запрос, но в ответе не содержится тела сообщения. Например, при удалении ресурса сервер может вернуть код ответа 204 без тела ответа.

Коды перенаправления (300-399)

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

Примеры кодов перенаправления:

  • 301 Moved Permanently — Этот код ответа сообщает клиенту, что запрошенный ресурс был перемещен на новый URI, и клиент должен использовать новый URI для дальнейшей работы с ресурсом. Читать подробнее — что такое 301 редирект.
  • 302 Found — Этот код ответа сообщает клиенту, что запрошенный ресурс был временно перемещен на другой URI, и клиент должен использовать новый URI для дальнейшей работы с ресурсом. Однако, в отличие от кода ответа 301, клиент должен продолжать использовать старый URI в будущем.

Коды ошибок клиента (400-499)

Коды ошибок клиента сообщают клиенту, что сервер не смог обработать запрос из-за ошибок в запросе. Эти коды ответа сообщают о том, что клиент отправил некорректный запрос или запрос, который сервер не может обработать.

Примеры кодов ошибок клиента:

  • 400 Bad Request — Этот код ответа сообщает клиенту, что сервер не может обработать запрос из-за некорректного синтаксиса запроса или неверных параметров.
  • 403 Forbidden — Этот код ответа сообщает клиенту, что сервер понимает запрос, но отказывается выполнять его из-за отсутствия прав доступа у клиента.

Коды ошибок сервера (500-599)

Коды ошибок сервера сообщают клиенту, что сервер не смог обработать запрос из-за внутренней ошибки сервера. Эти коды ответа сообщают о том, что сервер не может выполнить запрос из-за ошибок на стороне сервера.

Примеры кодов ошибок сервера:

  • 500 Internal Server Error — Этот код ответа сообщает клиенту, что сервер не смог выполнить запрос из-за внутренней ошибки сервера.
  • 503 Service Unavailable — Этот код ответа сообщает клиенту, что сервер временно не может обработать запрос из-за перегрузки или неполадок в работе сервера. Клиент может повторить запрос позже.

Пример использования кодов ответа сервера

Давайте рассмотрим пример использования кодов ответа сервера на практике. Предположим, что у нас есть RESTful API для управления списком задач. Клиент отправляет запросы на создание, чтение, обновление и удаление задач, используя HTTP-методы POST, GET, PUT и DELETE соответственно.

При создании новой задачи сервер должен вернуть код ответа 201 и URI созданной задачи в теле ответа:

POST /api/tasks HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "title": "Написать текст на тему коды ответа сервера",
  "description": "Написать уникальный, структурированный и продающий текст на тему коды ответа сервера.",
  "due_date": "2023-04-01"
}
HTTP/1.1 201 Created
Location: /api/tasks/123
Content-Type: application/json

{
  "id": 123,
  "title": "Написать текст на тему коды ответа сервера",
  "description": "Написать уникальный, структурированный и продающий текст на тему коды ответа сервера.",
  "due_date": "2023-04-01",
  "status": "в процессе"
}

При чтении задачи сервер должен вернуть код ответа 200 и тело ответа с информацией о задаче:

GET /api/tasks/123 HTTP/1.1
Host: example.com
HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 123,
  "title": "Написать текст на тему коды ответа сервера",
  "description": "Написать уникальный, структурированный и продающий текст на тему коды ответа сервера.",
  "due_date": "2023-04-01",
  "status": "в процессе"
}

При обновлении задачи сервер должен вернуть код ответа 200 и тело ответа с обновленной информацией о задаче:

PUT /api/tasks/123 HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "title": "Написать уникальный текст на тему коды ответа сервера",
  "description": "Написать уникальный, структурированный и продающий текст на тему коды ответа сервера.",
  "due_date": "2023-04-01",
  "status": "завершено"
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 123,
  "title": "Написать уникальный текст на тему коды ответа сервера",
  "

Вместо заключения

Хотите выйти в ТОП10 Яндекс и долго там оставаться? Продвигайте свои сайты и интернет-магазины исключительно белыми SEO методами! Не умеете? Могу научить! Тем, кто хочет разобраться во всех премудростях SEO, предлагаю посетить мои курсы по SEO обучению, которые я провожу индивидуально, в режиме онлайн по скайпу.

Для тех, у кого нет времени проходить обучение и самостоятельно заниматься продвижением своих интернет-магазинов, предлагаю и в этом вопросе помощь. Я могу взять ваш сайт на SEO продвижение и за несколько месяцев вывести его в ТОП10 Яндекс.

Для того чтобы убедиться в моей экспертности, предлагаю ознакомиться с моими последними SEO кейсами и только после этого заказать у меня SEO продвижение. Ниже на видео один из примеров успешного продвижения строительного сайта в Санкт-Петербурге.

    Связаться со мной и задать вопрос



    Оставьте комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

     Нажимая «оставить комментарий» вы принимаетеправила конфиденциальности