Junior
Räägi HTTP staatusekoodidest.
sobes.tech AI
Vastus AI-lt
HTTP olekukoodid on kolme tähemärki pikad täisarvud, mille server tagastab vastusena kliendi päringule. Nad näitavad päringu tulemust ja jagunevad viide klassi:
- 1xx Teadete: Päring on saadud ja töötlemine jätkub.
100 Continue: Server on saanud päringu algusosa ja klient võib jätkata ülejäänud osa saatmist.101 Switching Protocols: Server mõistab ja on valmis teostama protokollide muutmise, mida klient on nõudnud.
- 2xx Edukad: Päring on edukalt töödeldud, mõistetud ja vastu võetud.
200 OK: Tavaline edukas vastus HTTP päringutele.201 Created: Päring on täidetud ja loodud uus ressurss.204 No Content: Server on edukalt töötlenud päringu, kuid vastuses puudub keha.
- 3xx Suunamine: Päringu lõpetamiseks on vaja täiendavaid toiminguid.
301 Moved Permanently: Nõutud ressurss omab uut püsivat URI.302 Found: Nõutud ressurss on ajutiselt teisaldatud teisele URI-le.304 Not Modified: Ressurss pole alates viimast saatmist muutunud.
- 4xx Kliendi vead: Päring sisaldab süntaksiviga või seda ei saa täita.
400 Bad Request: Server ei mõista päringut kehtetu süntaksi tõttu.401 Unauthorized: Ressursile juurdepääsuks on vaja autentimist.403 Forbidden: Server mõistab päringut, kuid keeldub seda autoriseerimast.404 Not Found: Server ei leia nõutud ressurssi.
- 5xx Serveri vead: Server ei saa õigesti täita õigesti vormindatud päringut.
500 Internal Server Error: Üldine serveri viga päringu töötlemisel.502 Bad Gateway: Värava või vahendina toimiva serveri sai kehtetu vastuse kõrgemalt serverilt.503 Service Unavailable: Server ei saa hetkel päringut töödelda ajutise ülekoormuse või hoolduse tõttu.
Näited testimisel:
- API testimine: Kontrollige, kas tagastatud olekukoodid vastavad oodatule (näiteks,
200 OKedukaks andmete saamiseks,404 Not Foundmitteolemasoleva ressursi jaoks). - Veebirakenduste testimine: Kontrollige suunamisi (
3xxolekukoodid), kasutaja sisestusvigu (4xx), teenuste töökindlust koormuse ajal (503).
Olekukoodi kontrollimise näide Pythonis requests kasutades:
import requests
url = "https://www.example.com"
response = requests.get(url)
# Kontrollige, kas päring oli edukas (olekukood 2xx)
if response.status_code == 200:
print("Päring õnnestus")
else:
print(f"Viga: olekukood {response.status_code}")