rest api response codes
V tej vadnici bomo izvedeli več o različnih odzivnih kodah REST, vrstah prošenj REST in nekaj najboljših praks, ki jih je treba upoštevati :
V prejšnji vadnici REST API Architecture And Constraints smo se naučili o spletnih storitvah, REST Architecture, POSTMAN itd.
Za več informacij o tem se lahko obrnete na prvo vadnico REST API.
Kadar koli v iskalniku iščete katero koli besedo ali besedno zvezo, iskalnik pošlje zahtevo spletnemu strežniku. Spletni strežnik vrne trimestno odzivno kodo, ki označuje stanje zahteve.
Kaj se boste naučili:
- Odzivne kode za API za počitek
- Različne vrste zahtev za počitek
- Najboljše prakse med preverjanjem veljavnosti API-ja REST
- Zaključek
Odzivne kode za API za počitek
Tu je nekaj vzorčnih kod odzivov, ki jih bomo običajno videli med izvajanjem testiranja API-ja REST prek POSTMAN-a ali katerega koli odjemalca API-ja REST.
# 1) Serija 100
To so začasni odgovori
- 100 Nadaljuj
- 101 Preklapljanje protokolov
- 102 Obdelava
# 2) Serija 200
Naročnik sprejme zahtevo in se uspešno obdela na strežniku.
kje gledati anime brezplačno na spletu
- 200 - V redu
- 201 - Ustvarjeno
- 202 - Sprejeto
- 203 - Neupravičene informacije
- 204 - Brez vsebine
- 205 - Ponastavi vsebino
- 206 - Delna vsebina
- 207 - Več statusa
- 208 - Že prijavljeno
- 226 - IM uporabljeno
# 3) Serija 300
Večina kod, povezanih s to serijo, je namenjena preusmeritvi URL-jev.
- 300 - več možnosti
- 301 - Premaknjeno za vedno
- 302 - Najdeno
- 303 - Preveri drugo
- 304 - ni spremenjeno
- 305 - Uporabi proxy
- 306 - Preklopi proxy
- 307 - Začasna preusmeritev
- 308 - Trajna preusmeritev
# 4) Serija 400
Ti so značilni za napake na strani odjemalca.
- 400 - Slaba zahteva
- 401 - Nepooblaščeno
- 402 - Zahtevano plačilo
- 403 Prepovedano
- 404 ni najdeno
- 405 - Metoda ni dovoljena
- 406 - Ni sprejemljivo
- 407 - Zahtevana je overitev posrednika
- 408 - Časovna omejitev zahteve
- 409 - Konflikt
- 410 - Gone
- 411 - potrebna dolžina
- 412 - Predpogoj ni uspel
- 413 - Tovor je prevelik
- 414 - URI je predolg
- 415 - Nepodprta vrsta medija
- 416 - Doseg ni zadovoljiv
- 417 - Pričakovanje ni uspelo
- 418 - Jaz sem čajnik
- 421 - Napačno usmerjena zahteva
- 422 - Neobdelana entiteta
- 423 - Zaklenjeno
- 424 - neuspešna odvisnost
- 426 - potrebna nadgradnja
- 428 - Zahtevan predpogoj
- 429 - Preveč prošenj
- 431 - Polja glave zahtev so prevelika
- 451 - Ni na voljo iz pravnih razlogov
# 5) Serija 500
Ti so značilni za napako na strani strežnika.
- 500 Notranja napaka strežnika
- 501 - ni izvedeno
- 502 - Bad Gateway
- 503 - Storitev ni na voljo
- 504 Gateway Time out
- 505 - Različica HTTP ni podprta
- 506 - Varianta se tudi pogaja
- 507 - premalo prostora za shranjevanje
- 508 - Zaznana zanka
- 510 - Ni podaljšano
- 511 - Zahtevana je overitev omrežja
Poleg tega obstaja več različnih kodeksov, ki pa nas bodo oddaljili od trenutne razprave.
Različne vrste zahtev za počitek
Tu bomo razpravljali o vseh metodah REST API skupaj z zbirkami.
Metoda | Opis |
---|---|
PATCH | Zelo podobno, vendar je bolj kot manjša manipulacija z vsebino virov |
GET | Pridobi vrstico stanja, telo odziva, glavo itd. |
GLAVA | Enako kot GET, vendar le pridobi statusno vrstico in odsek glave |
OBJAVI | Zahtevo izvedite z uporabo koristnega tovora, večinoma pri ustvarjanju zapisa na strežniku |
PUT | Koristno pri manipulaciji / posodabljanju vira z uporabo zahtevanega tovora |
IZBRIŠI | Izbriše informacije v zvezi s ciljnim virom. |
OPCIJE | Opišite komunikacijske možnosti za ciljni vir |
Opomba: Obstaja toliko metod, ki jih lahko naredimo s programom POSTMAN, vendar bomo z uporabo programa POSTMAN razpravljali le o naslednjih metodah.
Za predstavitev bomo uporabili lažni URL http://jsonplaceholder.typicode.com . Ta URL nam bo dal želene odgovore, vendar strežnik ne bo ustvarjal ali spreminjal.
# 1) GET
Zahtevaj parametre:
Metoda: GET
URI zahteve: http://jsonplaceholder.typicode.com/posts
Parameter poizvedbe: id = 3;
Odgovor prejet:
Koda stanja odziva: 200 OK
Odzivno telo :
# 2) GLAVA
Zahtevaj parametre:
Metoda: GLAVA
URI zahteve: http://jsonplaceholder.typicode.com/posts
# 3) OBJAVI
kako napisati ročne testne primere
# 4) PUT
# 5) MOŽNOSTI
Zahtevaj parametre:
Metoda: MOŽNOSTI
URI zahteve: http://jsonplaceholder.typicode.com/
Glave: Content-type = Application / JSON
# 6) PATCH
Najboljše prakse med preverjanjem veljavnosti API-ja REST
# 1) CRUD operacije
Sestavljeni so iz najmanj štirih metod, ki bi morale delovati v spletnem API-ju.
GET, POST, PUT in DELETE.
# 2) Obravnavanje napak
Možni namigi za uporabnike API-ja o napaki in razlogu za napako. Vsebovati mora tudi podrobna sporočila o napakah.
# 3) Različice API-jev
V URL-ju uporabite črko 'v', da označite različico API-ja. Na primer-
http://restapi.com/api/v3/passed/319
Dodatni parameter na koncu URL-ja
http://restapi.com/api/user/invaiiduser?v=6.0
# 4) Filtriranje
Če uporabniku omogočite, da določi, izberite želene podatke, namesto da jih posredujete hkrati.
/ kontakt / sam? ime, starost, naziv, urad
/ kontakti? limit = 25 & offset = 20
# 5) Varnost
Časovni žig v vsaki zahtevi in odzivu API. Uporaba access_token za zagotovitev, da zaupajoče stranke prikličejo API.
vrsta napak pri testiranju programske opreme
# 6) Analitika
Če imate Analytics v svojem API-ju REST, boste dobili dober vpogled v preizkušeni API, zlasti kadar je število pridobljenih zapisov zelo veliko.
# 7) Dokumentacija
Zagotoviti je treba ustrezno dokumentacijo, da jo bodo potrošniki API lahko uporabljali in storitve učinkovito porabili.
# 8) Struktura URL-ja
Struktura URL-jev mora ostati enostavna, uporabnik pa mora imeti možnost, da preko nje zlahka prebere ime domene.
Na primer , https://api.testdomain.com.
Tudi operacije, ki jih je treba izvesti prek API-ja Rest, morajo biti zelo enostavne za razumevanje in izvajanje.
Na primer za e-poštnega odjemalca:
GET: read / inbox / messages - pridobi seznam vseh sporočil v mapi Prejeto
GET: read / inbox / messages / 10 - prebere 10thsporočilo v mapi Prejeto
POST: create / inbox / folders - v mapi Prejeto ustvarite novo mapo
IZBRIŠI: Delete / spam / messages - izbrišite vsa sporočila iz mape z vsiljeno pošto
PUT: mape / mapa Prejeto / podmapa - posodobite podatke, ki se nanašajo na podmapo v mapi Prejeto.
Zaključek
Mnoge organizacije raje uporabljajo REST Web API, saj je zelo enostaven za izvajanje, ima manj standardov in pravil, ki jih je treba upoštevati, enostaven za dostop, lahek in enostaven za razumevanje. POSTMAN ima svoje prednosti pri uporabi z RESTful API zaradi uporabniku prijaznega uporabniškega vmesnika, enostavnosti uporabe in preizkusa, hitrejšega odziva in nove funkcije RUNNER.
V naslednji vadnici v tej seriji Vodič za API za počitek bomo avtomatizirali testne primere, ki smo jih izvedli ročno.
Priporočeno branje
- Kako avtomatizirati zahteve za API z uporabo Rest Assured in Jenkinsa
- Testiranje API-ja REST s kumaricami z uporabo pristopa BDD
- 10 najboljših orodij za testiranje API-jev v letu 2021 (orodja za testiranje API-jev SOAP in REST)
- Preizkušanje API-ja REST s pomočjo Spring RestTemplate in TestNG
- Kako ustvariti projekt REST v programu SoapUI Pro: Vadnica št. 13
- Delo z zahtevami HTTP v JMetru
- Vrste tveganj pri programskih projektih
- SOAP VS REST Razlika: Primerjava zmogljivosti in varnosti