HTTP-коды в комиксах ко Дню Святого Валентина +44

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

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

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

200s: Успех


Коды 200-го класса обычно означают, что все в порядке. Запрос был получен, понят, и на сервере не было ошибок. Например, этот URL-адрес вернет код 200 OK — успешный запрос.

Идеальное завершение для пар «браузер + сервер» и «разработчик + его проект»

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


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

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





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

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


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

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

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


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









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






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



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











Эпилог


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



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

Вы можете помочь и перевести немного средств на развитие сайта



Комментарии (17):

  1. KitScribe
    /#10667438

    Очень забавно и познавательно. Спасибо

  2. KodyWiremane
    /#10667440 / +1

    Код 451 не раскрыт )

  3. MRomaV
    /#10667460 / +2

    image

  4. lxsmkv
    /#10667616

    (Сам имею к топику немного отдаленное отношение, прошу не судить за признание собственной малообразованности.)
    Сегодня на работе случайно в разговоре узнал, что статус коды не предназначены для передачи информационной нагрузки. Они только для сообщения состояния протокола, а не приложения. Т.е если сервер говорит 200, это не значит ничего кроме того что он принял запрос. Передавать статус кодом информацию нарушает назначение протокола, например:
    — У тебя есть сестра?
    — 200 (как-бы, «да»)
    Получается, представленные картинки искажают значение статус кодов, и предназначение протокола.
    Но сама задумка и исполнение очень милые.

    • ZurgInq
      /#10667936

      Это проблема rest http, протокол смешался с уровнем приложения.

      • lxsmkv
        /#10668590

        Спасибо, что поправили. Именно в этом контексте и был разговор.

  5. yanghu
    /#10667706

    304 полезен не только для браузеров. При запросе if modified since «date» поисковые роботы получают ответ not modified и не обходят страницу, хотя в последнее время они это не особо учитывают. По теме: прикольные иллюстрации, спасибо!

  6. Akuma
    /#10667758

    Ошибка 418 вполне реальна с современными чайниками и кофеварками, кстати :)

  7. Lure_of_Chaos
    /#10667938

    500 ОЙ ВСЕ

  8. nrcmn
    /#10668014

    Ошибки 402 не хватает.

  9. vesper-bot
    /#10668054

    Хотел бы посмотреть на 100. «Ну поуговаривай меня!»

  10. 402d
    /#10668234 / +2
  11. Mercury13
    /#10668300 / +9

  12. achekalin
    /#10668696

    Скоро 23-е, начинайте рисовать!

  13. nizkopal
    /#10668718

    Спасибо, улыбнуло. :)

  14. antanariva
    /#10670288

    А к масленнице?))