Sobes.tech
Junior

Խոսեք HTTP վիճակային կոդերի մասին։

sobes.tech AI

Պատասխան AI-ից

HTTP կարգավիճակի կոդերը եռանիշ ամբողջ թվեր են, որոնք սերվերը վերադարձնում է որպես պատասխան հաճախորդի հարցումին: Նրանք ցույց են տալիս հարցման արդյունքը և բաժանվում են հինգ դասի.

  • 1xx Տեղեկատվական: Հարցումը ստացվել է և գործընթացը շարունակվում է:
    • 100 Continue: Սերվերը ստացել է հարցման սկզբնական մասը, և հաճախորդը կարող է շարունակել մնացած մասը ուղարկել:
    • 101 Switching Protocols: Սերվերը հասկանում և պատրաստ է կատարել հարցված պրոտոկոլների փոփոխությունը:
  • 2xx Հաջող: Հարցումը հաջողությամբ մշակվել է, հասկացվել և ընդունվել:
    • 200 OK: Ստանդարտ հաջող պատասխան HTTP հարցումների համար:
    • 201 Created: Հարցումը կատարվել է, և ստեղծվել է նոր ռեսուրս:
    • 204 No Content: Սերվերը հաջողությամբ մշակել է հարցումը, բայց պատասխանին մարմին չկա:
  • 3xx Կատարվող փոփոխություններ: Հարցման ավարտին անհրաժեշտ են լրացուցիչ գործողություններ:
    • 301 Moved Permanently: Հարցված ռեսուրսը ունի նոր մշտական URI:
    • 302 Found: Հարցված ռեսուրսը ժամանակավոր տեղափոխվել է այլ URI:
    • 304 Not Modified: Ռեսուրսը չի փոխվել վերջին ուղարկումից:
  • 4xx Հաճախորդի սխալներ: Հարցումը պարունակում է սինտաքսական սխալ կամ չի կարող կատարվել:
    • 400 Bad Request: Սերվերը չի հասկանում հարցումը ոչ վավեր սինտաքսի պատճառով:
    • 401 Unauthorized: Անհրաժեշտ է հաստատում:
    • 403 Forbidden: Սերվերը հասկանում է հարցումը, բայց հրաժարվում է թույլատրել:
    • 404 Not Found: Սերվերը չի գտնում պահանջվող ռեսուրսը:
  • 5xx Սերվերի սխալներ: Սերվերը չի կարող ճիշտ կատարել ձևավորված հարցումը:
    • 500 Internal Server Error: Սերվերի ընդհանուր սխալը հարցման մշակման ժամանակ:
    • 502 Bad Gateway: Գլխավոր սերվերից կամ պրոքսի սերվերից ստացված պատասխանն անվավեր է:
    • 503 Service Unavailable: Սերվերը այս պահին չի կարող մշակել հարցումը՝ ժամանակավոր ծանրաբեռնվածության կամ սպասարկման պատճառով:

Օգտագործման օրինակներ թեստավորման ժամանակ:

  • API-ի թեստավորում: Ստուգել, որ վերադարձվող կարգավիճակի կոդերը համապատասխանում են սպասվածներին (օրինակ, 200 OK հաջող տվյալների ստացման համար, 404 Not Found չհասանելի ռեսուրսի համար):
  • Վեբ հավելվածների թեստավորում: Ստուգել ռեդիրեկտները (3xx կարգավիճակային կոդեր), օգտատերերի մուտքային սխալները (4xx), ծառայությունների աշխատանքը բեռի տակ (503):

Կոդի ստուգման օրինակ Python-ում requests գրադարանի օգտագործմամբ:

import requests

url = "https://www.example.com"
response = requests.get(url)

# Ստուգել, որ հարցումը հաջող է (կոդ 2xx)
if response.status_code == 200:
    print("Հարցումը հաջող է")
else:
    print(f"Սխալ հարցում: Կոդ {response.status_code}")