Справочник на HTTP статус кодове — безплатно
Търсим справочник за всички HTTP статус кодове — какво означава всеки, кога се използва и общи причини. От 100 до 511.
61 статус кода
100Продължи
Сървърът е получил заглавията на исканието и клиентът трябва да продължи с тялото.
Продължи
Сървърът е получил заглавията на исканието и клиентът трябва да продължи с тялото.
Използва се за искания с Expect: 100-continue. Сървърът признава, че е готов да прими тялото, преди клиентът да го изпрати. Рядко се вижда в съвременни уеб приложения.
101Преминаване на протоколи
Сървърът преминава към протоколи, както е поискано от клиента.
Преминаване на протоколи
Сървърът преминава към протоколи, както е поискано от клиента.
Най-често се използва за надстройка на WebSocket — клиентът запрашва Upgrade: websocket и сървърът отговаря с 101 за преминаване.
102Обработка
Сървърът е получил исканието и го обработва, но все още няма достъпен отговор.
Обработка
Сървърът е получил исканието и го обработва, но все още няма достъпен отговор.
Временен отговор на WebDAV, изпращан, за да се предотврати времево превишение на клиента при дълги операции. Остарял — съвременните сървъри не трябва да го изпращат.
103Ранни съвети
Предварителни заглавия, изпращени преди окончателния отговор.
Ранни съвети
Предварителни заглавия, изпращени преди окончателния отговор.
Позволява на сървърите да изпращат заглавия Link (preload/preconnect), докато окончателния отговор все още се подготвя, така че браузърите да могат да започнат да зареждат критични ресурси по-скоро.
200Добре
Исканието е успешно.
Добре
Исканието е успешно.
Стандартния отговор за успех. Значението зависи от HTTP метода: GET → ресурс е върнат, POST/PUT → действието е завършено.
201Създадено
Нов ресурс е успешно създаден.
Създадено
Нов ресурс е успешно създаден.
Обичайно след POST. Отговорът трябва да включи заглавие Location, насочващо към URL на новия ресурс.
202Приемано
Исканието е приемано за обработка, но обработката все още не е завършена.
Приемано
Исканието е приемано за обработка, но обработката все още не е завършена.
За асинхронни операции — сървърът поставя работата в опашка. Клиентът трябва да попита крайна точка на статуса или да провери по-късно.
203Неавторитетна информация
Отговорът е променен от трансформиращ прокси.
Неавторитетна информация
Отговорът е променен от трансформиращ прокси.
Исканието е успешно, но средник (като кеширащ или трансформиращ прокси) е променил полезния товар от оригиналния сървър — например, прекомпресиране на изображения. Редко в практиката.
204Без съдържание
Исканието е успешно, но няма тяло на отговора.
Без съдържание
Исканието е успешно, но няма тяло на отговора.
Често се използва за операции DELETE или PUT обновления, които не трябва да вращат тяло. Клиентът не трябва да се отдалечава от текущата страница.
205Нулиране на съдържание
Исканието е успешно; клиентът трябва да нулира представлението на документа.
Нулиране на съдържание
Исканието е успешно; клиентът трябва да нулира представлението на документа.
Като 204, не се вращ тяло — но клиентът е допълнително казан да нулира формуляра или представлението, което е произвело исканието (напр. изчисти полетата на формуляра за следващия запис).
206Частично съдържание
Сървърът доставил само част от ресурса.
Частично съдържание
Сървърът доставил само част от ресурса.
Отговор на исканието Range. Използва се от видео плейъри и мениджъри на изтегляния, за да се възобнови прекъснато изтегляне или да се потокови големи файлове.
207Много статуса
Тялото на отговора съдържа множество статус кодове за множество операции.
Много статуса
Тялото на отговора съдържа множество статус кодове за множество операции.
WebDAV: XML тяло докладва резултата на няколко подоперации независимо — напр. групово преместване, където някои елементи успяха, а други не.
208Вече докладвано
Членовете на колекцията бяха вече посочени по-рано в отговора.
Вече докладвано
Членовете на колекцията бяха вече посочени по-рано в отговора.
WebDAV: използва се вътре в отговорите 207 Multi-Status, за да се избегне повторното посочване на членове на същата колекция, когато привързанията създават цикли.
226IM използвано
Отговорът е резултат от манипулации на екземпляра, приложени към ресурса.
IM използвано
Отговорът е резултат от манипулации на екземпляра, приложени към ресурса.
Кодиране на разликите: сървърът вращ разлика спрямо предходна версия вместо пълния ресурс, спестявайки честотната лента. Много редко реализирано.
300Множество избора
Множество представяния на ресурса са налични.
Множество избора
Множество представяния на ресурса са налични.
Сървърът предлага множество опции (напр. различни формати или езици) и клиентът трябва да избере една. Редко се използва, защото автоматичното договаряне на съдържание обикновено справя това.
301Постоянно преместено
Ресурсът е постоянно преместен на нов URL.
Постоянно преместено
Ресурсът е постоянно преместен на нов URL.
Използвайте за постоянни промени на URL — търсещите машини ще обновят индекса си. Авторитетът на SEO се прехвърля към новия URL.
302Намерено (временно пренасочване)
Ресурсът е временно на различен URL.
Намерено (временно пренасочване)
Ресурсът е временно на различен URL.
Показва, че пренасочването не е постоянно. Кеширането е по-малко агресивно, отколкото 301. Използвайте за неща, като 'се изисква вход, пренасочване към /login'.
303Вижте други
Пренасочване към различен URL с помощта на GET.
Вижте други
Пренасочване към различен URL с помощта на GET.
Използва се след POST подаване — отговорът казва 'вашия POST работи, вижте този GET URL за резултата'. Браузърите винаги ще GET новия URL.
304Не е променено
Кешираната версия все още е валидна; използвайте я.
Не е променено
Кешираната версия все още е валидна; използвайте я.
Отговор на условно исканието (с заглавия If-None-Match или If-Modified-Since). Спестява честотната лента — не е върнато тяло.
307Временно пренасочване
Като 302, но сохранява оригиналния HTTP метод.
Временно пренасочване
Като 302, но сохранява оригиналния HTTP метод.
Ако оригиналното беше POST, пренасочването също използва POST. Съвременна алтернатива на 302, когато сохранението на метода е важно.
308Постоянно пренасочване
Като 301, но сохранява оригиналния HTTP метод.
Постоянно пренасочване
Като 301, но сохранява оригиналния HTTP метод.
Съвременна замяна на 301, когато искате POST исканията да останат POST след пренасочването.
400Лошо исканието
Сървърът не можа да разбере исканието поради неправилен синтаксис.
Лошо исканието
Сървърът не можа да разбере исканието поради неправилен синтаксис.
Обичайни причини: неправилен JSON в тяло, невалидни параметри на заявка или липсващи необходими полета. Проверете тялото и заглавията на исканието.
401Неавторизирано
Необходимо е оверификуване и то не е предоставлено.
Неавторизирано
Необходимо е оверификуване и то не е предоставлено.
Клиентът трябва да включи идентификационни данни (заглавие Authorization, бисквитка, токен). 'Неавторизирано' е неправилен термин — всъщност означава 'неавтентифицирано'.
402Плащането е необходимо
Запазено за бъдеща употреба — понякога се използва за платени нива на API.
Плащането е необходимо
Запазено за бъдеща употреба — понякога се използва за платени нива на API.
Първоначално предназначено за цифрови плащания. Съвременна употреба: API понякога връщат 402, когато потребител е надвишил квотата си.
403Забранено
Клиентът е оверификуван, но няма разрешение.
Забранено
Клиентът е оверификуван, но няма разрешение.
Различно от 401 — потребителят Е влязъл, но акаунтът му няма разрешение за този ресурс. Проверете логиката на ролите/разрешенията.
404Не е намерено
Поисканият ресурс не съществува.
Не е намерено
Поисканият ресурс не съществува.
URL е неправилен, ресурсът е изтрит или никога не е съществувал. Сървърите понякога връщат 404, за да скрият, че 403 би било по-точно.
405Методът не е разрешен
HTTP методът, използван, не е разрешен за този ресурс.
Методът не е разрешен
HTTP методът, използван, не е разрешен за този ресурс.
Например, GET исканието към крайна точка, която приема само POST. Отговорът трябва да включи заглавие Allow, посочващо валидни методи.
406Неприемливо
Никакво представяне не съответства на заглавията Accept на клиента.
Неприемливо
Никакво представяне не съответства на заглавията Accept на клиента.
Клиентът поискал тип съдържание, език или кодиране (чрез Accept, Accept-Language, Accept-Encoding), които сървърът не може да удовлетвори. Много сървъри пропускат строгото договаряне и вращат подразбирана вместо това.
407Оверификуване на прокси е необходимо
Клиентът трябва да се удостовери с прокси първо.
Оверификуване на прокси е необходимо
Клиентът трябва да се удостовери с прокси първо.
Като 401, но издадено от прокси: клиентът трябва да изпрати идентификационни данни на Proxy-Authorization. Виждано на корпоративни мрежи с оверификиращи прокси.
408Времето на заявката изтече
Сървърът отложи времето си чакайки заявката.
Времето на заявката изтече
Сървърът отложи времето си чакайки заявката.
Клиентът отнема твърде много време да изпрати тялото на заявката или запазва връзката неактивна. Опитайте заявката отново.
409Конфликт
Заявката противоречи на текущото състояние на ресурса.
Конфликт
Заявката противоречи на текущото състояние на ресурса.
Обикновено се връща при конфликти при едновременно редактиране или дублирано създаване на ресурс (напр. създаване на потребител с електронна поща, която вече съществува).
410Изтрито
Ресурсът е изтрит и няма да се върне.
Изтрито
Ресурсът е изтрит и няма да се върне.
По-силна от 404 — сървърът явно знае, че ресурсът Е СЪЩЕСТВУВАЛ преди, но е бил постоянно премахнат. Търсачките ще го премахнат от индекс.
411Необходима е дължина
Сървърът изисква заглавие Content-Length.
Необходима е дължина
Сървърът изисква заглавие Content-Length.
Заявката е отхвърлена, защото липсва заглавие Content-Length и сървърът отказва телата с неизвестен размер. Добавете заглавието и опитайте отново.
412Предусловието не беше изпълнено
Условие в заглавията на заявката не беше изпълнено.
Предусловието не беше изпълнено
Условие в заглавията на заявката не беше изпълнено.
Връща се, когато условни заглавия като If-Match или If-Unmodified-Since не успеят — обикновено оптимистична блокировка: някой друг е променил ресурса от вашата версия. Изтеглете отново и опитайте.
413Товарът е твърде голям
Тялото на заявката превишава лимита на размера на сървъра.
Товарът е твърде голям
Тялото на заявката превишава лимита на размера на сървъра.
Честа при качване на големи файлове. Конфигурацията на сървъра (nginx, apache) задава максимален размер на тялото. Проверете конфигурацията на сървъра.
414URI е твърде дълъг
URL адресът на заявката превишава лимита на дължина на сървъра.
URI е твърде дълъг
URL адресът на заявката превишава лимита на дължина на сървъра.
Обикновено причинено от много дълги низове от запитване (напр. кодиране на данни в GET). Преминете към POST тяло или повишете лимита на сървъра, ако го контролирате.
415Неподдържан тип носител
Сървърът не може да обработи изпратения Content-Type.
Неподдържан тип носител
Сървърът не може да обработи изпратения Content-Type.
Например, изпращане на application/xml към сървър, който приема само application/json. Задайте правилно заглавието Content-Type.
416Диапазонът не е задоволим
Поисканият байтов диапазон е извън размера на ресурса.
Диапазонът не е задоволим
Поисканият байтов диапазон е извън размера на ресурса.
Заглавието Range поиска част, която файлът няма — напр. продължаване на изтегляне след края на файла. Отговорът трябва да включва Content-Range с действителния размер.
417Очакването не беше изпълнено
Сървърът не може да отговори на изискванията на заглавието Expect.
Очакването не беше изпълнено
Сървърът не може да отговори на изискванията на заглавието Expect.
Изпратено, когато сървърът не поддържа Expect: 100-continue. Някои клиенти изпращат това заглавие по подразбиране при големи POST заявки; отключването обикновено решава проблема.
418Аз съм чайник
Сървърът отказва да вари кафе, защото е чайник.
Аз съм чайник
Сървърът отказва да вари кафе, защото е чайник.
Априлска шега от 1998 г. (RFC 2324). Някои истински API използват го за шеги или да отбележат остарели крайни точки. Не за производство.
421Неправилно насочена заявка
Заявката е изпратена на сървър, който не може да произведе отговор за нея.
Неправилно насочена заявка
Заявката е изпратена на сървър, който не може да произведе отговор за нея.
Честа при HTTP/2 повторно използване на връзка: заявката достигна сървър, който не е конфигуриран за целевия хост. Клиентът трябва да опита отново на нова връзка.
422Необработимо съдържание
Заявката е синтактично валидна, но семантично неправилна.
Необработимо съдържание
Заявката е синтактично валидна, но семантично неправилна.
Например JSON е разпознат правилно, но липсва задължително поле или стойност на поле е извън диапазон. Честа при отговори на валидиране на REST API.
423Заключено
Ресурсът е заключен.
Заключено
Ресурсът е заключен.
WebDAV: ресурсът на източника или дестинацията е заключен от друг клиент, така че операцията не може да продължи. Очаквайте блокировката да бъде освободена или я разбийте с подходящия токен.
424Неуспешна зависимост
Заявката не успя, защото предишна зависима заявка не успя.
Неуспешна зависимост
Заявката не успя, защото предишна зависима заявка не успя.
WebDAV: в верига от зависими операции, по-рано действие е неуспешно, така че това не е извършено. Потърсете по-ранния отказ за основната причина.
425Твърде рано
Сървърът отказва да обработи заявка, която може да бъде повторена.
Твърде рано
Сървърът отказва да обработи заявка, която може да бъде повторена.
Свързано с TLS 1.3 0-RTT (ранни данни): сървърът няма да рискува обработка на възможно повторена заявка. Клиентът трябва да опита отново след като завърши ръкостискането.
426Необходима е надстройка
Клиентът трябва да преминат на различен протокол.
Необходима е надстройка
Клиентът трябва да преминат на различен протокол.
Сървърът отказва да служи заявката над текущия протокол, но ще го направи след надстройка — отговорът включва Upgrade заглавие, назовава необходимия протокол.
428Предусловието е необходимо
Сървърът изисква заявката да бъде условна.
Предусловието е необходимо
Сървърът изисква заявката да бъде условна.
Сървърът изисква условни заглавия (като If-Match) за предотвратяване на конфликти при загубени актуализации. Изтеглете ресурса, улучете неговия ETag и изпратете отново с If-Match.
429Твърде много заявки
Клиентът е ограничен по брой.
Твърде много заявки
Клиентът е ограничен по брой.
Намалете темпото. Отговорът трябва да включва Retry-After заглавие, указващо кога да опитате отново. Честа при API с квоти на заявки.
431Полета на заглавието на заявката са твърде голяма
Заглавията са твърде голяма за сървъра да обработи.
Полета на заглавието на заявката са твърде голяма
Заглавията са твърде голяма за сървъра да обработи.
Или едно заглавие, или общият размер на заглавието превишава лимита — най-често причинено от преразмерени бисквитки. Изчистете бисквитки или намалете какво съхранява приложението в тях.
451Недостъпно по правни причини
Достъпът е отказан поради правни искания.
Недостъпно по правни причини
Достъпът е отказан поради правни искания.
Ресурсът е блокиран по правни причини — цензура, съдебни заповеди или регионални нормативни актове. Номерът е намек към романа Fahrenheit 451.
500Вътрешна грешка на сървъра
Сървърът срещна неочакувано състояние.
Вътрешна грешка на сървъра
Сървърът срещна неочакувано състояние.
Родов catch-all за грешки на страната на сървъра. Проверете дневниците на сървъра за действителната причина: необработено изключение, грешка на базата данни и т.н.
501Не е внедрено
Сървърът не поддържа поисканата функционалност.
Не е внедрено
Сървърът не поддържа поисканата функционалност.
Например сървърът не разпознава HTTP метода. Рядко на практика — по-често ще видите 405.
502Лош шлюз
Сървърът, действайки като шлюз, получи лош отговор от горен поток сървър.
Лош шлюз
Сървърът, действайки като шлюз, получи лош отговор от горен поток сървър.
Честа в архитектури на микросервиси. Вашата балансирка на натоварване или обратен прокси получи неправилен отговор от услугата на заден план.
503Услугата е временно недостъпна
Сървърът е временно неспособен да обработи заявката.
Услугата е временно недостъпна
Сървърът е временно неспособен да обработи заявката.
Или е спрян за поддръжка, или е претоварен. Отговорът трябва да включва Retry-After заглавие. Често се връща при развръщане.
504Времевия лимит на шлюза
Сървърът на шлюза отложи времето си чакайки отговор от горен поток.
Времевия лимит на шлюза
Сървърът на шлюза отложи времето си чакайки отговор от горен поток.
Услугата на заден план не отговори достатъчно бързо. Проверете здравето на услугата на горен поток и конфигурациите на времевите лимити.
505HTTP версия не е поддържана
Сървърът не поддържа версията HTTP, използвана в заявката.
HTTP версия не е поддържана
Сървърът не поддържа версията HTTP, използвана в заявката.
Основната версия на HTTP на заявката не е поддържана от сървъра. Почти никога не се вижда със съвременни клиенти.
506Вариантът също преговаря
Сървърът има неправилна конфигурация на преговорите по съдържание.
Вариантът също преговаря
Сървърът има неправилна конфигурация на преговорите по съдържание.
Преговорите по прозрачното съдържание завършиха в цикъл: избраният вариант е сам конфигуриран за преговори. Показва грешка в конфигурацията на сървъра.
507Недостатъчно съхранение
Сървърът е останал без място на диска.
Недостатъчно съхранение
Сървърът е останал без място на диска.
WebDAV специфична по произход, но понякога използвана от общи сървъри. Означава, че сървърът не може да запази заявката поради ограничения на съхранението.
508Цикълът е открит
Сървърът е открил безкраен цикъл при обработка на заявката.
Цикълът е открит
Сървърът е открил безкраен цикъл при обработка на заявката.
WebDAV: обработка на Depth: infinity заявка влиза в цикъл (напр. кръгови свързвания). Операцията беше прекратена.
510Не е разширено
Необходими са допълнителни разширения на заявката.
Не е разширено
Необходими са допълнителни разширения на заявката.
От застарелия HTTP Extension Framework: сървърът се нуждае от повече информация, преди да може да изпълни заявката. Ефективно неупотребяван в съвременния интернет.
511Необходима е удостоверяване на мрежата
Клиентът трябва да се удостовери, за да получи достъп до мрежата.
Необходима е удостоверяване на мрежата
Клиентът трябва да се удостовери, за да получи достъп до мрежата.
Използвано от пленителни портали (хотел/летищни WiFi), за да покажат, че потребителят трябва да се влезе в мрежата, преди да получи достъп до външни сайтове.
Често срещани употреби
- Справка за дизайн APIПри проектиране на REST API изберете правилния статус код за всеки отговор.
- Бързо потърсете кодове за грешкиКогато приложението връща объркваща HTTP грешка, потърсете какво наистина означава.
- Научете HTTP статус кодовеВсеобхватна справка за студенти и разработчици, които учат HTTP и REST.
- Бърза справка при инцидентиПрез производствени инциденти бързо потърсете какво означава всеки статус код.
- Справка за API документацияПри писане на API документация, свържете се с авторитетни описания на кодовете на статуса, които връщате.
Как работи
Този инструмент е клиентска справка, изградена около твърдо кодирана справочна таблица от 63 HTTP статус кода, обхващащи и петте класа (1xx–5xx), всеки анотиран с определящия го номер на RFC. Няма обръщение към сървър, няма външен API и няма мрежова заявка — цялото филтриране и показване се извършва в браузъра чрез вградените методи на JavaScript за масиви и низове.
- 1Справочната таблица се зареждаПълният набор от 63 статус кода, регистрирани от IANA, е вграден директно в този инструмент като масив на JavaScript, като всеки запис носи числовия код, каноничното английско име, категориен клас и конкретния RFC, който го дефинира (напр. RFC 9110 за повечето кодове на HTTP/1.1, RFC 6585 за 429 Too Many Requests, RFC 2324 за 418 I'm a Teapot).
- 2Филтърът работи в паметтаДокато пишете или изберете филтър по категория, Array.filter на JavaScript се изпълнява върху списъка в паметта, съпоставяйки заявката ви с номера на статус кода, каноничното име и както краткия, така и дългия низ с описание чрез String.includes — без забавяне, без обръщение към сървъра.
- 3Детайлите се разгъват с връзка към RFCВсеки резултат се рендерира като HTML елемент details/summary. Разгъването на запис разкрива обяснението в дълга форма и директна връзка към авторитетния RFC на rfc-editor.org, така че можете да прочетете точния текст на спецификацията за всеки код.
- 4Дълбоки връзки и копиране в клипбордаОтварянето на запис обновява хеша на URL адреса до номера на кода (напр. #404), правейки страницата споделяема и удобна за отмятане. Бутонът за копиране записва каноничния низ (напр. '404 Not Found') в клипборда чрез navigator.clipboard API на браузъра.
Свързани инструменти
Генератор на цитати
Създавайте цитати и препратки в текста по APA 7, MLA 9, Chicago и Harvard за уебсайтове, книги, списания и YouTube — и съставяйте списък с литература за копиране или експорт. Безплатно и поверително.
Интервален таймер
Таймер за работа и почивка за HIIT и Tabata тренировки със загрявка, рундове, серии, голямо обратно броене, цветово обозначени фази, звукови сигнали и по избор гласови подсказки.
Разделяне на видео
Разделете дълго видео на части: парчета от 60 секунди за статус или Stories във WhatsApp, определен брой равни части или части под определен размер, например 25 MB за имейл. Запазете всяка част или всички като ZIP. Работи във вашия браузър; видеото не се качва.