Ruka hadi maudhui makuu

Rejeleo la Misimbo ya Hali ya HTTP bila malipo

Rejeleo linaloweza kutafutwa kwa misimbo yote ya hali ya HTTP — kila moja inamaanisha nini, inapotumiwa, na sababu za kawaida. Kutoka 100 hadi 511.

Inafanya kazi bila mtandao mara ikishapakia

msimbo 61 wa hali

100

Endelea

Huduma imepokea vichwa vya ombi na mtaja anapaswi kuendelea na mwili.

Inatumika kwa ombizo wenye Expect: 100-continue. Huduma inathibitisha kuwa iko tayari kupokea mwili kabla mtaja kutuma. Haona akili katika programu za wavuti za kisasa.

RFC 9110 ↗
101

Kubadili Itifaki

Huduma inabadili itifaki kama ilivyoombwa na mtaja.

Inatumika sana kwa upgredi wa WebSocket - mtaja anaomba Upgrade: websocket na huduma inatoa 101 ili kubadili.

RFC 9110 ↗
102

Inachakatika

Huduma imepokea ombi na inachakata, lakini jibu halipo.

Jibu la kati la WebDAV linasomwa ili kuzuia muda wa mtaja wakati wa maamalisha marefu. Imepitwa - huduma za kisasa hazipaswi kutuma.

RFC 2518 ↗
103

Kidokezo Mapema

Vichwa vya utangulizi vilivyosomwa kabla ya jibu halisi.

Huruhusu huduma kusomeka vichwa vya Kiungo (preload/preconnect) huku jibu halisi likiambi, ili kivinjari kianze kupakua mali muhimu mapema.

RFC 8297 ↗
200

Sawa

Ombi liliyofaulu.

Jibu la kawaida la kazi iliyofaulu. Maana inategemea njia ya HTTP: GET → rasilimali inarejelea, POST/PUT → kitendo kimekamilika.

RFC 9110 ↗
201

Niliundwa

Rasilimali mpya iliundwa kwa kazi.

Kawaida baada ya POST. Jibu lipaswi kujumuisha kichwa cha Mahali kinachosomeza kwa URL ya rasilimali mpya.

RFC 9110 ↗
202

Imekamatia

Ombi likakubaliwa kwa uhandaji, lakini uhandaji haujamalizika.

Kwa maamalisha ya async - huduma inaokeja kazi. Mtaja anapaswi kupogeza sehemu ya hali au kuangalia tena baadaye.

RFC 9110 ↗
203

Taarifa Yasiyo na Mamlaka

Jibu lilhibadilishwa na kigeu cha kubadili.

Ombi liliyofaulu, lakini kati (kama kichuja au kigeu cha kigeu) ilibadilisha pilo kutoka kwa huduma ya asili - kwa mfano, kukamatia picha. Chache sana kwa mazoezi.

RFC 9110 ↗
204

Hakuna Maudhui

Ombi liliyofaulu lakini hakuna mwili wa jibu.

Inatumika sana kwa uondaji au sasisho za PUT ambazo hazihitaji kurejeza mwili. Mtaja hapaswi kusogeza kutoka ukurasa wa sasa.

RFC 9110 ↗
205

Sasisha Maudhui

Ombi liliyofaulu; mtaja anapaswi kusasisha mwonekano wa hati.

Kama 204, hakuna mwili unarejelea - lakini mtaja pia anaambiwa kusasisha fomu au mwonekano uliotaka ombi (k.m. kusafisha sehemu za fomu kwa uingizi ujao).

RFC 9110 ↗
206

Maudhui Ya Sehemu

Huduma ilitoa sehemu tu ya rasilimali.

Jibu kwa ombi la Masafa. Inatumika na wavuti za video na muandaji wa kupakua ili kueneza kupakua kusitishwa au kupiga faili kubwa.

RFC 9110 ↗
207

Hali Nyingi

Mwili wa jibu una kodhi nyingi za hali kwa maamalisha nyingi.

WebDAV: mwili wa XML unasomeka matokeo ya maamalisha kadhaa kwa kujitegemea - k.m. hoja ya batch ambapo baadhi ya bidhaa ziliyofaulu na zingine zilishindwa.

RFC 4918 ↗
208

Tayari Ilisomewa

Washiriki wa kundi walikuwepo tayari katika jibu hilo.

WebDAV: inatumika ndani ya 207 jibu la Hali Nyingi ili kuepuka kuorodhesha washiriki wa kundi mara kwa mara wakati ufungaji unaundwa matanzi.

RFC 5842 ↗
226

IM Kutumika

Jibu ni matokeo ya upachaji wa mfano ulioletwa kwa rasilimali.

Uweza wa delta: huduma inarejelea tofauti dhidi ya matoleo ya zamani badala ya rasilimali kamili, akisaridi bandwidth. Haiwezi kutekelezwa mara chache.

RFC 3229 ↗
300

Chaguzi Nyingi

Wakilishi kadhaa wa rasilimali wapo.

Huduma inatoa chaguzi kadhaa (k.m. muundo tofauti au lugha) na mtaja anapaswi kuchagua moja. Chache sana, kwa sababu kupatanisha maudhui ya kiotomati kawaida hubadilisha hii.

RFC 9110 ↗
301

Kusogea Kudumu

Rasilimali imesogea kupela kwa URL mpya.

Tumia kwa mabadiliko ya URL ya kudumu - injini za utaftaji zitasasisha faharasa yao. Mamlaka ya SEO inakwenda kwa URL mpya.

RFC 9110 ↗
302

Kupatikana (Upigaji Upya wa Muda)

Rasilimali iko kwa muda kwenye URL tofauti.

Inaonyesha upigaji upya hauna kuduma. Kugiza ni chini sana kuliko 301. Tumia kwa vitu kama 'ingia inahitajika, upigaji upya kwa /login'.

RFC 9110 ↗
303

Angalia Zaidi

Upigaji upya kwa URL tofauti kwa kutumia GET.

Inatumika baada ya uwasilishaji wa POST - jibu linasema 'POST yako ilifanya kazi, angalia GET URL hii kwa matokeo'. Kivinjari kila mara GET URL mpya.

RFC 9110 ↗
304

Haibadilishwa

Toleo la kugiza bado halali; tumia.

Jibu kwa ombi linalolingana (na If-None-Match au If-Modified-Since vichwa). Huokoa bandwidth - hakuna mwili unarejelea.

RFC 9110 ↗
307

Upigaji Upya wa Muda

Kama 302 lakini huhifadhi njia ya HTTP ya asili.

Kama asili ilikuwa POST, upigaji upya pia hutumia POST. Mbadala ya kisasa kwa 302 wakati uhifadhi wa njia ni muhimu.

RFC 9110 ↗
308

Upigaji Upya wa Kudumu

Kama 301 lakini huhifadhi njia ya HTTP ya asili.

Mbadala ya kisasa kwa 301 wakati unataka ombizo za POST kuwa POST baada ya upigaji upya.

RFC 9110 ↗
400

Ombi Lisilojua

Huduma haiwezi kuelewa ombi kutokana na sintaksa isiyojua.

Sababu za kawaida: JSON isiyo na fomu katika mwili, vigezo vya utaftaji basi, au sehemu zinazohitajika zinakosa. Angalia mwili wa ombi na vichwa.

RFC 9110 ↗
401

Yasiyo na Mamlaka

Uthibitisho unahitajika na haujatolewa.

Mtaja lazima jumuishe leseni za uthibitisho (kichwa cha Mamlaka, kuki, kauri). 'Yasiyo na Mamlaka' ni jina lisilojua - inamaanisha 'haijathibitishwa'.

RFC 9110 ↗
402

Malipo Yanahitajika

Karibu kwa matumizi ya baadaye - wakati mwingine inatumika kwa nyenzo za API zinazolipwa.

Chini ilikamatia kwa malipo ya kidijitali. Matumizi ya kisasa: API wakati mwingine inatoa 402 wakati mtaja amezidi quota yake ya kulipwa.

RFC 9110 ↗
403

Kuzuiwa

Mtaja amethibitishwa lakini hana ruhusa.

Tofauti na 401 - mtaja ANALOGI, lakini akaunti yake haina ruhusa kwa rasilimali hii. Angalia mantiki ya jukumu/ruhusa.

RFC 9110 ↗
404

Hakuna Mahali

Rasilimali iliyoombwa haipo.

URL ni mbaya, rasilimali ilisambazwa, au haiwezi kuwepo. Huduma wakati mwingine inarejelea 404 ili kuficha kuwa 403 itakuwa sahihi.

RFC 9110 ↗
405

Njia Haiaruhusiwi

Njia ya HTTP inatumika haiaruhusiwi kwa rasilimali hii.

Kwa mfano, ombi la GET kwa sehemu inayokubali tu POST. Jibu lipaswi kujumuisha kichwa cha Ruhusa kinachoorodhesha njia halali.

RFC 9110 ↗
406

Haikusukuliu

Hakuna wakilishi unalingana na vichwa vya Ukubalifu vya mtaja.

Mtaja aliomba aina ya maudhui, lugha, au utaftaji (kupitia Ukubalifu, Ukubalifu-Lugha, Ukubalifu-Utaftaji) huduma haiwezi kukidhi. Huduma nyingi huruka kupatanisha madhubuti na kurejeza chaguo kubwa.

RFC 9110 ↗
407

Uthibitishaji wa Proksi Unahitajika

Mteja lazima kuingia kwa proxy kwanza.

Kama 401, lakini inatoka kwa kigeu: mtaja lazima kutume leseni za Proxy-Authorization. Kuonekana kwenye mitandao ya kampeni na kigeu cha uthibitisho.

RFC 9110 ↗
408

Muda wa Ombi Umeisha

Seva ilipoteza muda ikingojea ombi.

Mteja alichukua muda mrefu kutuma mwili wa ombi au kuweka muunganisho usiofanya kazi. Jaribu ombi tena.

RFC 9110 ↗
409

Mgongano

Ombi linalingana na hali ya sasa ya rasilimali.

Kawaida inarudiwa kwa mgogoro wa uhariri wa sambamba au kuunda rasilimali mara mbili (kwa mfano, kuunda mtumiaji wenye barua pepe ambayo tayari ipo).

RFC 9110 ↗
410

Imeondolewa

Rasilimali ilifutwa wala haitarudi.

Imepigwa mwenyewe zaidi ya 404 — seva inajua wazi kwamba rasilimali ILIKUWA lakini imefutwa kabisa. Mitandao ya utafutaji itaondoa faharasa.

RFC 9110 ↗
411

Urefu Unahitajika

Seva inahitaji kichwa cha Content-Length.

Ombi lilikataliwa kwa sababu haikuwa na kichwa cha Content-Length na seva inakataa miili yenye saizi isiyojulikana. Ongeza kichwa na jaribu tena.

RFC 9110 ↗
412

Sharti la Awali Limeshindwa

Sharti katika kichwa cha ombi haikutimizwa.

Inarudiwa wakati vichwa vya sharti kama If-Match au If-Unmodified-Since vinavyoshindwa — kawaida kubadilisha kwa fadhili: mtu mwingine alibadilisha rasilimali tangu toleo lako. Tafuta tena na jaribu.

RFC 9110 ↗
413

Data Iliyotumwa Ni Kubwa Mno

Mwili wa ombi unazidi kiwango cha saizi cha seva.

Kawaida wakati wa kupigia faili kubwa. Msanidi wa seva (nginx, apache) anaweka saizi kubwa zaidi ya mwili. Angalia usanidi wa seva.

RFC 9110 ↗
414

URI Ni Ndefu Mno

URL ya ombi inazidi kiwango cha urefu cha seva.

Kawaida husababishwa na safu ya maswali ndefu sana (k.m. kusanidi data katika GET). Badili kwa mwili wa POST au kuinua kiwango cha seva ikiwa unakiongoza.

RFC 9110 ↗
415

Aina ya Faili Haitumiki

Seva haiwezi kushughulikia Content-Type iliyotumwa.

Kwa mfano, kutuma application/xml kwa seva inayokubali tu application/json. Weka kichwa cha Content-Type kwa usahihi.

RFC 9110 ↗
416

Kipimo Hakiwezi Kutoshelezwa

Masaada ya baiti yaliyoombwa hayako nje ya saizi ya rasilimali.

Kichwa cha Range kinaomba sehemu faili haina — k.m. kueneza upakuaji zaidi ya mwisho wa faili. Jibu linafaa kuwa na Content-Range na saizi halisi.

RFC 9110 ↗
417

Matarajio Yameshindwa

Seva haiwezi kutunga mahitaji ya kichwa cha Expect.

Kutumwa wakati seva haisupporti Expect: 100-continue. Waajenti wengine hutuma kichwa hiki kwa chaguo-msingi kwenye POSTs kubwa; kukataza kawaida kuhuisha tatizo.

RFC 9110 ↗
418

Mimi ni Chombo cha Chai

Seva inakataa kuchemsha kahawa kwa sababu ni ibric.

Badhilizi ya Aprili Mjinga kutoka 1998 (RFC 2324). API zimoja halisi zitumia kwa badhilizi au kuweka ncha zilizosema kuondolewa. Sio kwa matumizi ya uzalishaji.

RFC 2324 ↗
421

Ombi Limeelekezwa Vibaya

Ombi lilitumwa kwa seva isiyoweza kutengeneza jibu.

Kawaida na muunganisho wa HTTP/2 unaozuianika tena: ombi lilifikia seva ambayo haikutengeneza kwa jina la kompyuta la lengwa. Mteja anapaswa jaribu kwenye muunganisho mpya.

RFC 9110 ↗
422

Maudhui Hayawezi Kuchakatwa

Ombi lilikuwa na kukamatia kwa kinematiki lakini kibaya semantikally.

Kwa mfano, JSON iliyogeuza kwa usahihi lakini uwanja wa lazima ulikosekana, au thamani ya uwanja ilikuwa nje ya safu. Kawaida katika majibu ya uthibitisho wa REST API.

RFC 9110 ↗
423

Imefungwa

Rasilimali imefungwa.

WebDAV: chanzo au rasilimali ya lengwa imefungwa na mteja mwingine, hivyo operesheni haiwezi kuendelea. Ngojea kufungwa kufungwa au kuvunja kwa token sahihi.

RFC 4918 ↗
424

Utegemezi Umeshindwa

Ombi lilishindwa kwa sababu ombi la awali lililotegemea lilishindwa.

WebDAV: katika mnyororo wa operesheni tegemezi, hatua ya mapema ikashindwa, hivyo hii haikufanywa. Angalia kushindwa hapo mapema kwa sababu ya mzizi.

RFC 4918 ↗
425

Mapema Mno

Seva inakataa kusanidi ombi linaloeza inayoweza kurudiwa.

Inayohusiana na TLS 1.3 0-RTT (data ya mapema): seva haitajisumbulia kusanidi ombi linaloeza inayoweza kurudiwa. Mteja anapaswa jaribu baada ya ukabiaji kumalizika.

RFC 8470 ↗
426

Uboreshaji Unahitajika

Mteja lazima abadili kwa itifaki tofauti.

Seva inakataa kutumika ombi juu ya itifaki ya sasa lakini baada ya kusasisha — jibu linajumuisha kichwa cha Upgrade kinachotaja itifaki inayohitajika.

RFC 9110 ↗
428

Sharti la Awali Linahitajika

Seva inahitaji ombi kuwa na sharti.

Seva inahitaji vichwa vya sharti (kama If-Match) ili kuepuka mgogoro wa kupoteza sasisho. Tafuta rasilimali, pakua ETag yake, na tuma tena kwa If-Match.

RFC 6585 ↗
429

Maombi Mengi Mno

Mteja anakabiliwa na kiwango cha kuhesabu.

Punguza. Jibu linafaa kuwa na kichwa cha Retry-After kinachotia wakati wa kujaribu tena. Kawaida na APIs wenye hesabu ya ombi.

RFC 6585 ↗
431

Sehemu za Kichwa cha Ombi Ni Kubwa Mno

Kichwa ni kubwa sana kwa seva kusanidi.

Kichwa kimoja au jumla ya saizi ya kichwa inazidi kiwango — mara nyingi husababishwa na kuki kubwa zaidi. Futa kuki au punguza nini programu lako inakifanya nao.

RFC 6585 ↗
451

Haipatikani Kisheria

Kufikia kuzuiwa kutokana na mahitaji ya kisheria.

Rasilimali imezuiwa kwa sababu za kisheria — ufanisi, amri za mahakama, au kanuni za eneo. Nambari ni kurudia msing Fahrenheit 451.

RFC 7725 ↗
500

Hitilafu ya Ndani ya Seva

Seva ilifikia hali isiyotarajiwa.

Ujumbe wa kawaida kwa hitilafu za upande wa seva. Angalia kidataji cha seva kwa sababu halisi: ubaguzi unaozingirwa, hitilafu ya hifadhidata, n.k.

RFC 9110 ↗
501

Haijatekelezwa

Seva haisupporti kazi inayoombwa.

Kwa mfano, seva haitambui njia ya HTTP. Ajabu katika mazoezi — mara nyingi utaona 405.

RFC 9110 ↗
502

Lango Baya

Seva, inayofanya kama njia mlalo, ilipokea jibu lenye kupunguka kutoka seva ya mapema.

Kawaida katika usanifu wa microservice. Uzani wa mzigo wako au kinyume cha balansaji kupokea jibu lenye kupunguka kutoka huduma ya nyuma.

RFC 9110 ↗
503

Huduma Haipatikani

Seva hainaweza kusanidi ombi kwa sasa.

Inatakikana imefungwa kwa matengenezo au inahinitiwa kupita kiwango. Jibu linafaa kuwa na kichwa cha Retry-After. Mara nyingi inarudiwa wakati wa masambazaji.

RFC 9110 ↗
504

Muda wa Lango Umeisha

Seva ya mlalo ilipoteza muda ikingojea jibu la mapema.

Huduma ya nyuma haikujibu kwa haraka. Angalia afya ya huduma ya mapema na usanidi wa muda.

RFC 9110 ↗
505

Toleo la HTTP Halitumiki

Seva haisupporti toleo la HTTP linalotumika katika ombi.

Toleo kubwa la HTTP la ombi linasimuliwa na seva. Karibu kamwe kuona na wateja wa sasa.

RFC 9110 ↗
506

Kibadala Pia Kinajadiliana

Seva ina ukamataji wa kukamatia usanidi usiolingana.

Hifadhidata ya kukamatia ya umuntu ilisogeza katika mzunguko: kigezo kinachochaguliwa kimenyewe kinatengeneza kukamatia. Inaashiria hitilafu ya usanidi wa seva.

RFC 2295 ↗
507

Hifadhi Haitoshi

Seva imekosa nafasi ya diski.

WebDAV-specific katika asili lakini wakati mwingine inatumika na seva za jumla. Maana seva haiwezi kukamatia ombi kwa sababu ya vizuizi vya kuhifadhi.

RFC 4918 ↗
508

Mzunguko Umegundulika

Seva iligundua mzunguko usio na mwisho wakati wa kusanidi ombi.

WebDAV: kusanidi ombi la Depth: infinity lilisogeza katika mzunguko (k.m. kuunganisha kwa mzunguko). Operesheni ilikomesha.

RFC 5842 ↗
510

Haijaongezwa

Upanuzi zaidi kwa ombi unahitajika.

Kutoka kwa HTTP Extension Framework iliyosema: seva inahitaji taarifa zaidi kabla haiwezi kutunga ombi. Imekoma kwa uvazi juu ya mtandao wa sasa.

RFC 2774 ↗
511

Uthibitishaji wa Mtandao Unahitajika

Mteja lazima kuingia kwa kukamatia kufikia mtandao.

Inatumika kwa njia za kumkamatia (hoteli/uwanja wa ndege WiFi) kutoa dalili mteja lazima kuingia kwa mtandao kabla ya kufikia maambo ya nje.

RFC 6585 ↗

Matumizi ya kawaida

  • Kumbuka kwa ajili ya Muundo wa APIWakati wa kuandaa REST API, chagua kanuni ya hali sahihi kwa kila jibu.
  • Angalia Kanuni za Hitilafu HarakaWakati programu yako inarudisha hitilafu ya HTTP inayogumiza, angalia kile kilichokusudia.
  • Jifunze Kanuni za Hali ya HTTPKumbuka kamili kwa ajili ya wanafunzi na wenye uzoefu wanaojifunza HTTP na REST.
  • Kumbuka Haraka Wakati wa MatukioWakati wa matukio ya uzalishaji, angalia haraka kile kanuni ya hali inayomaanisha.
  • Kumbuka kwa Hati za APIWakati wa kuandika hati za API, ungana na maelezo ya mamlaka ya misimbo ya hali unayorudisha.

Jinsi Inavyofanya Kazi

Kifaa hiki ni marejeleo ya upande wa mteja yaliyojengwa kuzunguka jedwali thabiti la utafutaji la misimbo 63 ya hali ya HTTP inayofunika madarasa yote matano (1xx–5xx), kila mmoja akiwa na maelezo ya namba yake ya RFC inayofafanua. Hakuna wito wa seva, hakuna API ya nje, na hakuna ombi la mtandao — kuchuja na kuonyesha vyote vinafanyika kwenye kivinjari kwa kutumia mbinu za safu na mfuatano za ndani za JavaScript.

  1. 1
    Jedwali la utafutaji linapakia
    Seti kamili ya misimbo 63 ya hali iliyosajiliwa na IANA imefungwa moja kwa moja kwenye kifaa hiki kama safu ya JavaScript, kila kiingilio kikibeba namba ya nambari, jina la kawaida la Kiingereza, kundi la kategoria, na RFC maalum inayoifafanua (mfano RFC 9110 kwa misimbo mingi ya HTTP/1.1, RFC 6585 kwa 429 Too Many Requests, RFC 2324 kwa 418 I'm a Teapot).
  2. 2
    Kuchuja kunafanyika kwenye kumbukumbu
    Unapoandika au kuchagua kichujio cha kategoria, Array.filter ya JavaScript inaendesha kwenye orodha iliyo kwenye kumbukumbu, ikilinganisha swali lako na namba ya msimbo wa hali, jina la kawaida, na mifuatano ya maelezo mafupi na marefu kwa kutumia String.includes — hakuna uchelewesho, hakuna mzunguko wa seva.
  3. 3
    Maelezo yanapanuka na kiungo cha RFC
    Kila matokeo yanaonyeshwa kama kipengele cha HTML details/summary. Kupanua kiingilio kunaonyesha maelezo marefu na kiungo cha moja kwa moja kwa RFC halisi kwenye rfc-editor.org, kwa hiyo unaweza kusoma maandishi kamili ya kiwango kwa msimbo wowote.
  4. 4
    Viungo vya kina na kunakili kwenye clipboard
    Kufungua kiingilio kunasasisha hash ya URL kuwa namba ya msimbo (mfano #404), kikifanya ukurasa kushirikiwa na kuweka alama kirahisi. Kitufe cha kunakili kinaandika mfuatano wa kawaida (mfano '404 Not Found') kwenye clipboard kupitia navigator.clipboard API ya kivinjari.

Zana Zinazohusiana

Maswali Yanayoulizwa Mara Kwa Mara