[Перевод] HTTP-коды в комиксах ко Дню Святого Валентина

День Святого Валентина уже завтра. Для некоторых это время романтических надежд, время, чтобы спросить «даму сердца» и получить ответ. Это может быть просто «да», грустное «нет» или загадочное «Я не думала о нас, как о паре, но, может быть, завтра мы сможем поужинать вместе?»

Это, хотя и косвенно, приводит нас к кодам статуса HTTP (Hypertext Transfer Protocol). Когда URL-адрес вводится в браузере, запрос отправляется на сервер. Как и в нашем сценарии, браузер ожидает ответа. Эти ответы поступают в виде HTTP-кода, который представляет собой трехзначное число, которое сопоставляется с определенным смыслом.

Вот несколько вероятных сценариев в виде комиксов ко Дню Святого Валентина.

200s: Успех


Коды 200-го класса обычно означают, что все в порядке. Запрос был получен, понят, и на сервере не было ошибок. Например, этот URL-адрес вернет код 200 OK — успешный запрос.
wpa5tvh-gg8yr0-i-f9ro3rer3i.png
Идеальное завершение для пар «браузер + сервер» и «разработчик + его проект»

300s: Перенаправление


Коды 300-го класса означают, что клиент должен предпринять дальнейшие действия для завершения запроса. В 300-ых также находятся все переадресации.

Человек, вероятно, никогда не увидит 300-ых кодов, поскольку браузер без пользователя должен предпринять необходимые действия. Однако, поисковые системы серьезно относятся к этим 300-ым кодам, поэтому разработчикам следует позаботиться о выборе правильного кода.

6ny7n3e0z3lhtv8mjs09z0rpqdy.png

un7bphf8l6adpchkqi7s6hgjlii.png

Существует тонкое, но важное различие между 302, 303 и 307, которое не очень хорошо отражено в комиксе.

Вкратце, смысл состоит в том, что, когда 302 код был впервые создан, он был неправильно реализован популярными браузерами. Чтобы устранить неоднозначность между верным 302 и неверным 302, были созданы коды 303 и 307.

dzcg36pkjv3d4j0idi8x5oavnsg.png
Этот комикс плохо иллюстрирует преимущества 304-го, поскольку для человека «да» намного короче, чем «мой ответ не изменился».

304 полезен для браузеров, потому что он сигнализирует, что ресурс может быть загружен из кэша, вместо того, чтобы заново загружать его с сервера.

400s: ошибка клиента


Класс кодов 4xx обычно указывает на проблему с запросом. Это может быть проблема с браузером или используемым URL.

sqbu4ijwdljkhz1tb9udspgxbgk.png

fmamfiohsnx9xgdbmwis1teqfdw.png

uroyqqamhcyqcboxvpbvwqtslo4.png

ifeq4qj-2jtt3yi2h3gpd-ns5ic.png

404 — это, возможно, самая распространенная ошибка. Хотя многие понимают её значение, как «этот ресурс не существует», и «этот ресурс удален», 404 фактически не указывает, существовал ли ресурс или будет ли он когда-либо возвращен.

yc19r5loqjj58tgsdwzh6xc-mbe.png
nk8gc9efs8_kdlrh9bkjbzun3xa.png
ig_ecslh76qdh02gxbpmppx9cyg.png
bta9hjo5d53yppa82t7wdfatqny.png

В отличие от знаменитого 404, 410 — это случай, когда ресурс существовал, но был удален навсегда и его возврат не ожидается. Если вы удалили страницу с вашего сайта на постоянной основе, следует использовать 410, а не 404.

oohy8g9bkwikkodvlo1gy0jlzye.png

500s: ошибка сервера

pzcrlphjdy5g9j_34p03g-fwg04.png

yz4wfcgullinujjezu402nv14dc.png

5cvvy_mjna-qmoa6menjvenabok.png

fibygsifxq_ysv0-ueylgoqrqpk.png

Эпилог


Наконец, самый забавный код статуса — это отсылка на первоапрельскую шутку далекого 1998 года, которая до сих пор жива.

guyskqw7szv9_61y1x4l_hzdvie.png

Hyper Text Coffee Pot Control Protocol (HTCPCP, гипертекстовый протокол управления кофеваркой) — протокол для управления, слежения и диагностики приборов для приготовления кофе. Запросы HTCPCP определяются с помощью схемы URI coffee: и содержат несколько добавлений к HTTP-запросам. 418 «I«m a teapot» (Ошибка 418: Я — чайник) — возвращается при попытке приготовить кофе с помощью чайника.

Надеемся, что просмотр этих комиксов сделал HTTP-коды более интересными. Дополнительные и более серьёзные пояснения по поводу этих кодов вы сможете найти по ссылкам ниже.

Ссылки по теме:

HTTP response status codes
HTTP Status Codes for Beginners | Added Bytes
Простым языком об HTTP

© Habrahabr.ru