Перайсці да асноўнага зместу
LibraTool logoLibraTool

Даведнік кодаў стану HTTP — бясплатна

Кіруемы пошукам даведнік усіх кодаў стану HTTP — што кожны значыць, калі выкарыстоўваецца і агульныя прычыны. Ад 100 да 511.

Працуе афлайн пасля загрузкі

61 код стану

100

Прадоўжаць

Сервер атрымаў загалоўкі запыту, і кліент павінен працягнуць адпраўку цела.

Выкарыстоўваецца для запытаў з Expect: 100-continue. Сервер пацвярджае, што гатовы атрымаць цела запыту, перш чым кліент яго адправіць. Рэдка сустракаецца ў сучасных вэб-праграмах.

RFC 9110 ↗
101

Переклучэнне прамаколаў

Сервер пераключае пратаколы паводле запыту кліента.

Часцей за ўсё выкарыстоўваецца для абнаўлення да WebSocket — кліент просіць Upgrade: websocket, і сервер адказвае 101 для пераключэння.

RFC 9110 ↗
102

Апрацоўка

Сервер атрыманы запыт і апрацоўваецца, але адказ яшчэ недаступны.

Паміжчасовы адказ WebDAV адпрамены для прадухілення ідэнцыфікацыі кліента падчас доўгіх аперацый. Старалая — сучасныя серверы не павінны яе адпраўляць.

RFC 2518 ↗
103

Ранія падказкі

Папярэднія загаловкі адпраўлены да канчатковага адказу.

Дазваляе серверам адпраўляць загалоўкі Link (preload/preconnect), пакуль канчатковы адказ яшчэ рыхтуецца, каб браўзеры маглі раней пачаць загрузку крытычных рэсурсаў.

RFC 8297 ↗
200

ОК

Запыт паспяхова завершыны.

Стандартны адказ об поспеху. Значэнне залежыць ад метаду HTTP: GET → рэсурс вернулі, POST/PUT → дзеянне завершыны.

RFC 9110 ↗
201

Створана

Новы рэсурс паспяхово створаны.

Часта выкарыстоўваецца пасля POST. Адказ павінен ўтрымліваць загавак Location, які паказвае на URL новага рэсурса.

RFC 9110 ↗
202

Прынята

Запыт быў прынят за апрацоўку, але апрацоўка яшчэ не завершыны.

Для асінхронных аперацый — сервер ставіць працу ў чаргу. Кліент павінен апытваць канчатковую кропку стану ці праверыць пазней.

RFC 9110 ↗
203

Неаўтарытэтная інфармацыя

Адказ быў змінена трансфармуючы прокі.

Запыт паспяхово завершыны, але паміжслойны (напр. кеш ці трансфармуючы прокі) змяніў нагрузку з арыгінальнага сервера — напрыклад, сцісканне зображэнь. Рэдка ў практыцы.

RFC 9110 ↗
204

Няма змесціва

Запыт паспяхово завершыны, але нямае адказу цяломі.

Часта выкарыстоўваецца для аперацый DELETE ці абнаўленняў PUT, якім не трэба вяртаць цела. Кліент не павінен пакідаць бягучую старонку.

RFC 9110 ↗
205

Скінуць змесцім

Запыт выкананы; кліент павінен скінуць прадстаўленне дакумента.

Як 204, цела не вяртаецца — але кліенту дадаткова прапануецца скінуць форму ці прадстаўленне, што выклікала запыт (напр., ачысціць палі формы для наступнага ўводу).

RFC 9110 ↗
206

Часткавы змесців

Сервер даў толькі частку рэсурса.

Адказ на запыт Range. Выкарыстоўваецца плеерам відэа і мэнэджарам загрузкі для аднаўлення перарваных загрузак ці трансляцыі вялікіх файлаў.

RFC 9110 ↗
207

Шматстатусны

Цяло адказу змяшчае некалькі кодаў статуса для некалькіх аперацый.

WebDAV: цяло XML паведамляе вынік некалькіх дапаміжных аперацый незалежна — напр. масавы рух, дзе некалькі прадметаў паспяхо, а іншыя не прайшлі.

RFC 4918 ↗
208

Ужо паведамлена

Чланы кіндаў ужо пересчілены раней ў адказе.

WebDAV: выкарыстоўваецца ў адказаў 207 Multi-Status для пазбяганя паўтарэння чланаў адной і той жа кіндаў, калі сувязі вінаградам цыклы.

RFC 5842 ↗
226

Выкарыстана IM

Адказ - гэта вынік маніпуляцыі экземпляра, прымененыя да рэсурса.

Кодзування дельта: сервер вяртае розьніцу супраць папярэдняй версіі замест поўнага рэсурса, эканомячы пропускну здольнасць. Вельмі рэдка разварты.

RFC 3229 ↗
300

Некалькі выбараў

Дакчалькі прадстаўленні рэсурса даступныя.

Сервер прапануе некалькі варыянтаў (напр., розныя фарматы ці мовы), і кліент павінен абраць адзін. Выкарыстоўваецца рэдка, бо гэта звычайна вырашае аўтаматычнае ўзгадненне змесціва.

RFC 9110 ↗
301

Перамешчаны перманентна

Рэсурс перамешчаны постаянна на новы URL.

Выкарыстоўваюць для постайных змян URL — пошукавыя сістэмы абнавяць свой індэкс. Аўтарытэт SEO пераносіцца на новы URL.

RFC 9110 ↗
302

Знайдзена (Часткавое перанаправленне)

Рэсурс часткавова знаходзіцца па іншым URL.

Паказвае, што перанакіраванне не пастаяннае. Кэшаванне менш агрэсіўнае, чым у 301. Выкарыстоўвайце для выпадкаў кшталту «патрэбны ўваход, перанакіраванне на /login».

RFC 9110 ↗
303

Гл. іншы

Перанаправленне на іншы URL з выкарыстаннем GET.

Выкарыстоўваецца пасля адпраўкі POST — адказ каже 'ваш POST спраца, гл. гэты GET URL для вынікаў'. Браўзеры заўсёды GET новы URL.

RFC 9110 ↗
304

Не змінена

Закешыраная версія яшчэ дзейсная; выкарыстоўвайце яе.

Адказ на умоўны запыт (з загаловкамі If-None-Match ці If-Modified-Since). Эканомічныя пропускну здольнасць — нет цяломі вяртаецца.

RFC 9110 ↗
307

Часткавое перанаправленне

Як 302, але захоўвае арыгінальны метад HTTP.

Калі арыгінальны быў POST, перанаправленне таксама выкарыстоўвае POST. Сучасная альтэрнатыва 302 калі захаванне методу важны.

RFC 9110 ↗
308

Постаяны перанаправленне

Як 301, але захоўвае арыгінальны метад HTTP.

Сучасны замест 301, калі вы хочаце, каб запыты POST заставаліся POST пасля перанаправлення.

RFC 9110 ↗
400

Шыба запыту

Сервер не мог зразумець запыт дзе-за невадомага сінтаксіса.

Цяж прычыны: невадомы JSON ў тула, незлічаныя параметры запыту ці адсутнічаюць абавязковыя палі. Праверыце тула запыту і загаловкі.

RFC 9110 ↗
401

Неаўтарызаваны

Аўтэнцыфікацыя патрэбна і не была пацвярджана.

Кліент павінен даслаць уліковыя даныя аўтэнтыфікацыі (загаловак Authorization, cookie, токен). «Unauthorized» — няслушная назва: насамрэч гэта значыць «неаўтэнтыфікаваны».

RFC 9110 ↗
402

Плата патрэбна

Зацвярджана для будучага выкарыстання — часам выкарыстоўваецца для пласціх ярусаў API.

Арыгінальна атрымана для лічных плацяжоў. Сучасны выкарыстанне: API часам вяртаюць 402, калі карыстальнік перавысіў свой пласцы квот.

RFC 9110 ↗
403

Забаронена

Кліент аўтэнтыфікаваны, але не мае дазволу.

Адрозніваецца ад 401 — карыстальнік ЗА ўвайшёў, але іхны рахунак не мае дазволу на гэты рэсурс. Праверыце логіку ролі/дазволаў.

RFC 9110 ↗
404

Не знайдзена

Запрошаны рэсурс не існуе.

Ці URL памылкова, ці рэсурс быў выдалены, ці ніколі не існаваў. Серверы часам вяртаюць 404 для скрыцця, што 403 было б больш дакладныя.

RFC 9110 ↗
405

Метад не дазволены

Метад HTTP, выкарыстаны, не дазволены для гэтага рэсурса.

Напрыклад, запыт GET да кінцавой, якая прымае толькі POST. Адказ павінен уключыць загавак Allow, які спісвае дазволеныя методы.

RFC 9110 ↗
406

Непрымальна

Ніводнае прадстаўленне не адпавядае загалоўкам Accept кліента.

Кліент запытаў тып змесціва, мову ці кадзіроўку (праз Accept, Accept-Language, Accept-Encoding), якую сервер не можа забяспечыць. Многія серверы прапускаюць строгае ўзгадненне і замест гэтага вяртаюць стандартны варыянт.

RFC 9110 ↗
407

Патрабуецца аўтэнтыфікацыя проксі

Кліент спачатку павінен прайсці аўтэнтыфікацыю на проксі.

Як 401, але выдаецца проксі: кліент павінен даслаць уліковыя даныя Proxy-Authorization. Сустракаецца ў карпаратыўных сетках з проксі з аўтэнтыфікацыяй.

RFC 9110 ↗
408

Тайм-аўт запыту

Сервер атміраў чакаючы запыт.

Кліент занадта доўга адпраўляў цела запыту ці трымаў злучэнне без актыўнасці. Паўтарыце запыт.

RFC 9110 ↗
409

Канфлікт

Запыт канфліктуе з поточным станам ресурса.

Звычайна вяртаецца для канфліктаў адначасовага редагавання або дублявання стварэння ресурса (напр., ствараючы карыстальніка з адрасам электроннай пошты, які ўжо існуе).

RFC 9110 ↗
410

Выдалена

Ресурс быў выдалены і больш не вернецца.

Мацнейшы за 404 — сервер явіцца ведае, што ресурс БЫЎ, але стойка пастаянна выдалены. Пошукавыя машыны яго скасуюць.

RFC 9110 ↗
411

Патрэбны Даўжыня

Сервер патрабуе заголовак Content-Length.

Запыт быў адклонены, таму што ў ім не хватала заголоўка Content-Length і сервер адмаўляе корпусы невядомага памеру. Дадайце заголовак і паўторыце спробу.

RFC 9110 ↗
412

Папярэджанне Не выконанае

Ўмова ў заголовках запыту не была спалнена.

Вяртаецца пры недаразуменні ўмовных заголовкаў, як If-Match або If-Unmodified-Since — звычайна аптымістычны замок: хтось другі змяніў ресурс пасля вашай версіі. Перазагрузіце і паўторыце.

RFC 9110 ↗
413

Пагрузка Занадта Вялікая

Корпус запыту пераўзыходзіць ліміт памеру сервера.

Распаўсюджана пры загрузцы вялікіх файлаў. Канфігурацыя сервера (nginx, apache) ўстанаўлівае максімальны памер тэла. Праверьце канфігурацыю сервера.

RFC 9110 ↗
414

URL Занадта Долгі

URL запыту пераўзыходзіць ліміт даўжыні сервера.

Звычайна выклікана вельмі доўгімі радкамі запыту (напр., кадаванне дадзеных у GET). Пасядзіце на тало POST ці павялічыце ліміт сервера, калі вы яго кантралюеце.

RFC 9110 ↗
415

Непадтрыманы Тып Носьбіта

Сервер не можа апрацаваць адправлены Content-Type.

Напрыклад, адпраўка application/xml на сервер, які прымае толькі application/json. Ўстаўце заголовак Content-Type правільна.

RFC 9110 ↗
416

Дыяпазон Не Задаволены

Запрошаны байтавы дыяпазон знаходзіцца за межамі памеру ресурса.

Заголовак Range запытвае частку, якая не існуе ў файле — напр. возаўначаўшы загрузку за межамі файла. Адказ павінен ўтрымліваць Content-Range з фактычным памерам.

RFC 9110 ↗
417

Чаканне Не Выконана

Сервер не можа спалніць требаванні заголовка Expect.

Адпраўляецца, калі сервер не падтрымлівае Expect: 100-continue. Некаторыя кліенты па змаўчанні адпраўляюць гэты загаловак на вялікіх POST; яго адключэнне звычайна вырашае памылку.

RFC 9110 ↗
418

Я Чайнік

Сервер адмаўляецца варыць каву, таму што гэта чайнік.

Прыколка дня апрелля з 1998 года (RFC 2324). Некаторыя сапраўдныя API выкарыстоўваюць яе для прыколаў або пазначэння скасаваных эндпойнтаў. Не для выкарыстання ў прадукцыі.

RFC 2324 ↗
421

Мадляны Запыт

Запыт быў адпраўлены на сервер, які не можа прадаставіць адказ.

Часта пры паўторным выкарыстанні злучэння HTTP/2: запыт дасягнуў сервера, які не настроены на мэтавае імя хоста. Кліент павінен паўтарыць спробу праз новае злучэнне.

RFC 9110 ↗
422

Неапрацаваны Змесцiва

Запыт быў сінтаксічна ўспешны, але семантычна невярны.

Напрыклад, JSON быў разбор правільна, але адсутнічаў павінны поле ці значэнне поля быў за межамі дыяпазону. Распаўсюджана ў адказах валідацыі REST API.

RFC 9110 ↗
423

Заблакаванзы

Ресурс заблакаваны.

WebDAV: рэсурс-крыніца ці рэсурс прызначэння заблакаваны іншым кліентам, таму аперацыя не можа быць выканана. Дачакайцеся зняцця блакіроўкі ці зніміце яе з правільным токенам.

RFC 4918 ↗
424

Памылка Залежнасцi

Запыт не атрымаўся, таму што папярэдны залежны запыт не атрымаўся.

WebDAV: у ланцугу залежных аперацый папярэдняя дзялось не атрымалася, таму гэтая не была выканана. Пагляджыце папярэднюю вызва для кораннай прычыны.

RFC 4918 ↗
425

Занадта Хутка

Сервер адмаўляецца апрацаваць запыт, які можа быць паўторны.

Звязана з TLS 1.3 0-RTT (раннія даныя): сервер не будзе рызыкаваць апрацоўваць магчыма паўторны запыт. Кліент павінен паўтарыць спробу пасля завяршэння handshake.

RFC 8470 ↗
426

Патрабуецца Абнаўленне

Кліент павінен пераключыцца на іншы пратакол.

Сервер адмаўляецца адпраўляць запыт над поточным пратаколам, але адпраўляе пасля абнаўлення — адказ ўтрымлівае заголовак Upgrade, імя патрэбнага пратакола.

RFC 9110 ↗
428

Папярэджанне Патрабуецца

Сервер патрабуе ўмовны запыт.

Сервер патрабуе ўмовныя заголовкі (як If-Match) каб прадухіліць конфліктаў потраты. Завяраце ресурс, прахіпайце яго ETag і адпраўце яго з If-Match.

RFC 6585 ↗
429

Занадта Многа Запытаў

Для кліента дзейнічае абмежаванне частаты запытаў.

Сповольніцеся. Адказ павінен ўтрымліваць заголовак Retry-After, які паказвае, калі спробаваць яшчэ раз. Распаўсюджана з API, якія маюць квоты запытаў.

RFC 6585 ↗
431

Заголовкі Запыту Занадта Вялікія

Заголовкі занадта вялікія для апрацоўкі сервером.

Або адзін загаловак, або агульны памер загалоўкаў перавышае ліміт — часцей за ўсё з-за завялікіх cookie. Ачысціце cookie ці змяншыце тое, што ваша праграма ў іх захоўвае.

RFC 6585 ↗
451

Недаступна Па Юрыдычным Прычынам

Доступ запрэчаны па юрыдычным патрабаванням.

Ресурс заблакаваны па юрыдычных прычынах — цэнзура, судовыя ордэры ці рэгіённальныя рэгуляцыі. Лічба спасылаецца на раман Fahrenheit 451.

RFC 7725 ↗
500

Інтэрнальная Памылка Сервера

Сервер сустрэў неспадзеванае стаўленне.

Агульны адхід для памылак на боку сервера. Праверьце журналы сервера для фактычнай прычыны: необработаны выніму, памылка базы дадзеных і т.д.

RFC 9110 ↗
501

Не Рэалізавана

Сервер не падтрымлівае запрошаную функцыю.

Напрыклад, сервер не распазнае HTTP метад. Рэдка на практыцы — часцей вы бачыце 405.

RFC 9110 ↗
502

Дрэнны Шлюз

Сервер, дзеючы як шлюз, атрымаў дрэны адказ ад вышэйшага сервера.

Распаўсюджана ў архітэктурах мікрасэрвісаў. Ваш балансыровач нагрузкі ці зваротны проксі атрымаў неправільны адказ ад задняга сэрвіса.

RFC 9110 ↗
503

Сэрвіс Недаступны

Сервер часова не можа апрацаваць запыт.

Ці адключаны для тэхнічнага абслужывання, ці перагружаны. Адказ павінен ўтрымліваць заголовак Retry-After. Часта вяртаецца падчас развёртванняў.

RFC 9110 ↗
504

Тайм-аўт Шлюза

Шлюз атміраў чакаючы адказ ад вышэйшага сервера.

Задні сэрвіс не адказаў дастаткова хутка. Праверьце стан вышэйшага сэрвіса і канфігурацыю тайм-аўтаў.

RFC 9110 ↗
505

Версія HTTP Не Падтрымліваецца

Сервер не падтрымлівае версію HTTP, выкарыстаную ў запыце.

Асноўная версія HTTP запыту не падтрымліваецца серверам. Практычна не сустракаецца з сучаснымі кліентамі.

RFC 9110 ↗
506

Варыянт Таксама Пратаколіруецца

Сервер мае памылку канфігурацыі прагнавання вмесцева.

Празрыстае ўзгадненне змесціва завяршылася цыклам: выбраны варыянт сам настроены на ўзгадненне. Паказвае на памылку канфігурацыі сервера.

RFC 2295 ↗
507

Недастаткова Сховы

Сервер заканчыўся дыскавая прастора.

WebDAV-спецыфічны па паходжанню, але часам выкарыстоўваны агульнымі сервераамі. Означае, што сервер не можа захаваць запыт з-за абмежаванняў сховы.

RFC 4918 ↗
508

Цыкл Выявлены

Сервер выявіў бесканечны цыкл пры апрацоўцы запыту.

WebDAV: апрацоўка запыту Depth: infinity ўвайшла ў цыкл (напр. цыклічныя прывязкі). Аперацыя была спынена.

RFC 5842 ↗
510

Не Пашырана

Далейшыя пашыренні запыту патрэбны.

З пройлугаўшага HTTP Extension Framework: сервер патрабуе больш інфармацыі да таго, як ён можа спалніць запыт. Фактычна не выкарыстоўваецца ў сучаснай сеціве.

RFC 2774 ↗
511

Аўтэнцыфікацыя Сеціва Патрэбна

Кліент павінен прайсці аўтэнтыфікацыю, каб атрымаць доступ да сеткі.

Выкарыстоўваецца пленнымі порталамі (гасцінічны/аэрапорт WiFi) каб паказаць, што карыстальнік павінен ўвайсцуўца ў сеціва да доступу ва вонкавыя сайты.

RFC 6585 ↗

Тыповыя выкарыстанні

  • Рэферэнцыя каб API дызайнуПры дызайну REST API, выбіраць адпаведны статус код каб кожны адказы.
  • Шукаць Код памылкі хуткаПры вашаму прыкладанне вяртае заблутаны HTTP памылка, шукаць што яно фактычна значыць.
  • Вывучайце HTTP статус кодаўПалны рэферэнцыя каб студэнтам і разработніком вывучаючы HTTP і REST.
  • Хутка рэферэнцыя падчас інцыдэнтаўПадчас прадаваны інцыдэнтаў, хутка шукаць што кожны статус код значыць.
  • Справа для дакументацыі APIПры напісанні дакументацыі API наводзьце спасылкі на авторытэтныя апісанні кодаў статусу, якія вы вяртаеце.

Як гэта працуе

Гэты інструмент — кліенцкі даведнік, пабудаваны вакол жорстка зададзенай даведачнай табліцы з 63 кодаў статусу HTTP, якая ахоплівае ўсе пяць класаў (1xx–5xx), кожны з якіх пазначаны нумарам вызначальнага RFC. Няма выкліку сервера, знешняга API ці сеткавага запыту — уся фільтрацыя і адлюстраванне адбываюцца ў браўзеры з дапамогай убудаваных метадаў масіваў і радкоў JavaScript.

  1. 1
    Загружаецца даведачная табліца
    Поўны набор з 63 зарэгістраваных IANA кодаў статусу ўбудаваны непасрэдна ў гэты інструмент як масіў JavaScript, кожны запіс якога нясе лічбавы код, кананічную англійскую назву, клас катэгорыі і канкрэтны RFC, які яго вызначае (напрыклад, RFC 9110 для большасці кодаў HTTP/1.1, RFC 6585 для 429 Too Many Requests, RFC 2324 для 418 I'm a Teapot).
  2. 2
    Фільтр працуе ў памяці
    Пры наборы ці выбары фільтра катэгорыі Array.filter JavaScript працуе на спісе ў памяці, супастаўляючы ваш запыт з нумарам кода статусу, кананічнай назвай і кароткімі і доўгімі радкамі апісання з дапамогай String.includes — без затрымкі, без зваротнага падарожжа да сервера.
  3. 3
    Дэталі разгортваюцца са спасылкай на RFC
    Кожны вынік рэндэрыцца як элемент HTML details/summary. Разгортванне запісу раскрывае доўгае тлумачэнне і прамую спасылку на аўтарытэтны RFC на rfc-editor.org, так што вы можаце прачытаць дакладны тэкст спецыфікацыі для любога кода.
  4. 4
    Глыбокія спасылкі і капіраванне ў буфер абмену
    Адкрыццё запісу абнаўляе хэш URL да нумара кода (напрыклад, #404), робячы старонку зручнай для абмену і закладак. Кнопка капіравання запісвае кананічны радок (напрыклад, '404 Not Found') у буфер абмену праз API navigator.clipboard браўзера.

Звязаныя інструменты

Часта задаюць пытанні