soap vs rest difference
Ta vadnica razlaga storitve SOAP in REST v programu Parasoft. Naučili se boste brez državljanstva in države, varnost SOAP nad REST, zakaj je REST hitrejši od SOAP itd.:
Obravnavali smo tudi vzorčne zahteve in odzive SOAP in REST v obliki XML oziroma JSON.
Proti koncu te vadnice boste lahko napisali svoje programe JSON, ki so bili razloženi z različnimi primeri programov, skupaj s konceptom JSON Path ali JSON Evaluator in Document Keys programa Parasoft.
=> Tukaj si oglejte celotno serijo vadb SOATest .
V tej vadnici so opisani tudi različni glagoli, ki se uporabljajo v programu Parasoft ali SOAtest Automation Tool, skupaj s primeri programiranja ter njihovo kodo odzivov HTTP in uporabo. Lahko boste razumeli, kako zgraditi svoje SOAtest apartmaje na boljši način, kar bo podrobno opisano v naši prihajajoči vadnici.
Ko preberete to vadnico, lahko poskusite odgovoriti tudi na vprašanja, navedena spodaj.
Kaj se boste naučili:
Kaj je storitev SOAP?
SOAP pomeni Simple Object Access Protocol . Protokoli niso nič drugega kot nabor pravil, ki jih določite za test. To je protokol s polno državo, za razliko od REST, ki vključuje uporabo WSDL (jezik za opis spletnih storitev) za opis spletnih storitev.
Vse zahteve in odgovori v SOAP so narejeni v XML (Extensible Markup Language). SOAP je varnejši v primerjavi s sorodnikom. Ne zagotavlja nobene neodvisne obdelave za različne metode, zato se imenuje protokol »poln stanja«.
Zakaj je SOAP varnejši?
Čeprav SOAP in REST za zaščito podatkov podpirata SSL (Secure Socket Layer) za zaščito podatkov, medtem ko SOAP podpira varnost spletnih storitev (znan tudi kot WS-Security ali WSS) za zaščito na ravni podjetja, ki je v storitvah REST ni. Varnost spletnih storitev (WS-Security, WSS) je razširitev SOAP-a za uporabo varnosti na spletnih storitvah.
Vzorec zahteve za SOAP
Parasoft TUP true Imamo XML, ki bo uporabljen kot koristni tovor za oblikovanje telesa zahteve SOAP. Vsak jezik XML je sestavljen iz različice, ki jo je treba določiti na vrhu skripta. Za oznake vam ni treba skrbeti, saj vam vse datoteke XML omogočajo ustvarjanje oznak, za razliko od HTML-ja.
Če poskušate žetone generirati z zahtevo SOAP, morate navesti potrebne parametre, kot sta uporabniški ID in geslo, skupaj z URL-jem, ki ga zadenete v telesu zahteve ali XML pod vašimi prilagojenimi oznakami.
Spodaj je posnetek zaslona pregledovalnika prometa programa Parasoft (komponenta, ki vam omogoča, da vidite rezultat).

(slika vir )
Pomembne lastnosti SOAP-a
Spodaj je navedenih nekaj pomembnih lastnosti SOAP:
# 1) Vsako ovojnico SOAP je mogoče uporabiti v storitvah REST, kot je ustvarjeni žeton, ne pa tudi obratno. To pomeni, da če ste žeton ustvarili z uporabo SOAP, ga lahko uporabite v REST (v razdelku Upravitelj glave HTTP => Pooblastitev). Vendar v zahtevi SOAP ne morete uporabiti ovojnic REST.
#two) SOAP je bolj varen kot REST, saj za prenos uporablja WS-Security skupaj s plastjo Secure Socket Layer.
# 3) SOAP uporablja XML samo za zahteve in odgovore. Ne uporablja navadnega besedila ali drugega.
# 4) SOAP je poln stanja (ne brez državljanstva), saj zajema celotno zahtevo kot celoto, za razliko od REST, ki zagotavlja neodvisno obdelavo različnih metod. V SOAP-u ni nobene neodvisne obdelave.
Kaj je storitev REST?
REST je kratica za Reprezentativni državni prenos . REST je arhitektura brez državljanstva, ki vključuje več metod ali glagolov pri obravnavi zahtev in odgovorov.
Vse zahteve in odgovori v REST so narejeni v XML, JSON (JavaScript Object Notation) ali navadnem besedilu. REST je hitrejši od SOAP-a zaradi vpletenosti JSON-a (ki je majhen) v zahtevo / koristni tovor REST-a.
Vsaka metoda se v REST obdela neodvisno, zato jo imenujemo arhitektura brez državljanstva.
Zakaj je REST hitrejši?
Narava brez državljanstva REST je hitrejša od mila. Vsak glagol se obdela samostojno in uporablja objekt JSON, ki je veliko hitrejši pri prehodu na katero koli polje v dokumentu, ki vsebuje več kot milijon zapisov.
Preden začnemo z metodami, ki se uporabljajo v REST, moramo vedeti o poti JSON in JSON, saj je najpogostejša oblika prenosa podatkov v REST.
Kaj je JSON?
JSON je kratica za JavaScript Object Notation. To je oblika, ki se običajno uporablja v odjemalcu REST.
Je samoopisljiv in enostavno razumljiv. Preprosto morate predati svoj JSON v razdelku koristnega tovora metode REST. To je lahka oblika izmenjave podatkov, ki omogoča storitvam REST veliko hitrejše, tudi če gre za milijon zapisov.
Programiranje z JSON
Spodaj je primeren program z enim samim dokumentom, imenovanim 'telefon'.

(slika vir )
To je moj vzorčni program JSON, v katerem moram pridobiti vrednost vrste telefona. V takem scenariju lahko uporabite dve tehniki za prehod skozi to polje. Ena je po poti JSON, druga pa po ključu dokumenta.
# 1) Med obravnavo poti JSON lahko uporabite dva načina:
$.phone(:1).type $('phone')(':1')('type') 


#two) Ker Parasoft ne dovoli poti JSON, lahko pri prehodu uporabimo nekoliko preprost ključ dokumenta. Preprosto predajte ključ dokumenta skupaj z URL-jem na zavihku vira kot
phone.typeNa spodnjem posnetku zaslona morate klikniti gumb za dodajanje in vnesti phone.type in končali ste.

V spodnjem primeru morate prehoditi zadnji element polja lokacije, ki je matrika. Zato poskusite zanjo napisati pot JSON.

najboljši upravitelj opravil za Windows 10
Kot lahko vidite v vrsticah številkah 37 in 39 (zgoraj), sta bili za isto potovanje do zadnjega elementa polja lokacije napisani dve različni poti JSON. Na enak način lahko ustvarite svoj JSON (zapleten ugnezden dokument) in poskusite napisati pot JSON za namene prakse.
REZULTAT:
(„Helsingborg“)
Na odprtem spletnem mestu z imenom lahko poskusite s poljubnim številom JSON Spletni ocenjevalec JSON
Metode / Glagoli v počitniških storitvah
Storitve REST nudijo široko paleto metod, ki so znane tudi kot glagoli za različne vrste zahtev. Ti v glavnem vključujejo OBJAVITE, POSTAVITE, PLAČITE, PRIDOBITE, IZBRISI, PO MERI .
OBJAVI
Ta metoda je odgovorna za ustvarjanje zapisa. Po uspešni izvedbi je odzivna koda HTTP 201.
Spodaj je vzorec JSON, ki ponazarja POST.
{ “Test”: { “Tester Name”: “Saket Saurav”, “Designation”: “QA”, “Test2”: { “Testing”: “Nested Document”, “Platform”: “Windows” } } }Ko ta JSON posredujemo kot telo zahteve, bo ustvaril dokument s kodo odziva 201.
GET
To je druga metoda ali glagol, ki se uporablja za pridobivanje dokumenta ali zapisa. Po uspešni izvedbi GET bo odzivna koda 200. Ta ne vsebuje nobenega telesa zahteve ali koristnega tovora.
Vse, kar morate storiti, je samo pritisniti isti URL z uporabo metode GET na zavihku virov v programu Parasoft s ključem dokumenta kot »Test«. Tudi če ne posredujete nobenega ključa dokumenta, bo prinesel celoten dokument.
Recimo, da ključ dokumenta posredujemo kot »Test.Test2«, nato mi bo prinesel naslednji zapis.
{ “Test”: { “Test2”: { “Testing”: “Nested Document”, “Platform”: “Windows” } } }PUT
Ta metoda se uporablja za posodobitev dokumenta, po uspešni izvedbi pa ima kodo odziva 200.
Čeprav se POST in PUT ne razlikujeta veliko in je vse odvisno od razvijalca, kako želi kodirati. Razvijalci večinoma uporabljajo metodo PUT, ko želijo posodobiti neko vrednost polja.
Na primer: Če želimo spremeniti nekaj vrednosti v zgornjem dokumentu JSON, ki ga je vstavil POST, bomo s pomočjo metode PUT posredovali celotno telo zahteve s posodobljeno vrednostjo.
{ “Test”: { “Tester Name”: “Saket Saurav”, “Designation”: “QA”, “Test2”: { “Testing”: “Nested Document”, “Platform”: “Updated Windows” } } }Ko bomo videli odziv v pregledovalniku prometa, bo vrednost polja posodobljena kot
“Platforma”: “Posodobljen sistem Windows”
OBLIKA (PO MERI)
To je še ena metoda, ki se uporablja izključno za posodabljanje zapisa. Večina razvijalcev ima raje to metodo kot metodo PUT, saj najbolje izkoristi vire. Če želite posodobiti neko vrednost polja v dokumentu, morate le posredovati samo to polje s posodobljeno vrednostjo zapisa.
Recimo, če želimo posodobiti zapis POST, bomo med uporabo PATCH uporabili samo naslednje telo zahteve.
{“Test”: { “Test2”: { “Testing”: “Nested Document”, “Platform”: “Updated Windows” } } }Kot ste opazili, tukaj nismo opravili poljskih vrednosti »Test«, za razliko od metode PUT. Uspešna izvedba vam bo dala 200 ali 201 odzivno kodo.
IZBRIŠI
Kot že samo ime pove, bo zapis izbrisan, znan tudi kot nastavitve. Ta ne vsebuje nobenega telesa zahteve, kot je GET, in ima pogosto kodo odziva 203 (brez vsebine). Če moramo v zgornjem JSON-u izbrisati celoten dokument, bomo ključ dokumenta samo predali kot.
TestS tem boste izbrisali celoten dokument. Če ključa dokumenta sploh ne posredujemo, bo tudi izbrisal celoten dokument.
Pasti intervjuja
V # 1) Večina anketarjev poskuša zmediti, ko vas prosijo, da so dobili uspešno kodo za brisanje odziva kot 200 namesto 204. Kaj naj storim v takšnih razmerah? Naj to prijavim kot napako?
Odgovor: Odgovor na zgornje vprašanje je preprost. Ni vam treba vzgajati hrošča. Namesto tega se lahko pogovorite z razvijalcem ali poskusite opazovati drugi odziv na operacijo brisanja. Koda odziva 200 vedno označuje uspešno operacijo, 204 pa je specifična za DELETE. Obstaja verjetnost, da so razvijalci uporabili 200 za vse uspešne operacije.
V # 2) Kako preverim, ali so posamezne vrednosti polj pravilne ali ne, ne da bi uporabil bazo podatkov v zahtevi JSON za milijon vrstic kode?
Odgovor: Odgovor je s pošiljanjem ključa dokumenta v operaciji GET. Vzorčni URL bo videti tako, kot je prikazano spodaj:
https://resource-name.com/context-key/document-key
V zgornjem URL-ju bo vaš kontekstni ključ enolično prinesel tisti JSON z 1 milijonom zapisov, ključ dokumenta pa bo določeno vrednost polja v tem zapisu.
V # 3) Če na vrhu JSON-a ne navedem nobenega imena dokumenta, kaj naj posredujem kot ključ dokumenta za prenos celotnega dokumenta?
Odgovor: Lahko preneseš karkoli. Ja točno. Če niste navedli nobenega imena dokumenta in če so v dokumentu prisotna samo polja in vrednosti, lahko posredujete katero koli vrednostno vrednost. Ta niz bo samodejno obravnavan kot ključ dokumenta.
Povzetek
Do zdaj bi morali imeti pošteno predstavo o spletnih storitvah SOAP in REST, njihovi strukturi, glavnih razlikah med njimi, njihovih lastnostih in uporabi.
Poleg tega smo v tej vadnici obravnavali najpogostejše / najpomembnejše metode (znane tudi kot glagoli), ki se uporabljajo v storitvah REST skupaj s programiranjem JSON in potjo JSON za namene ocenjevanja.
PREV Vadnica | NASLEDNJA Vadnica
Priporočeno branje
- Vadnica za JSON: Uvod in popoln vodnik za začetnike
- Preprost pristop za preskušanje podatkovne baze XML
- 10 najboljših orodij za testiranje API-jev v letu 2021 (orodja za testiranje API-jev SOAP in REST)
- 15+ vadnic za SoapUI: najboljše orodje za testiranje API-jev za spletne storitve
- 7 Pomembne lastnosti SoapUI in SoapUI Pro - Vadnica 2
- Kako ustvariti lažno storitev in dinamični odziv v SoapUI
- Kako ustvariti projekt REST v programu SoapUI Pro: Vadnica št. 13
- Postopek prenosa in namestitve programa SoapUI - Vadnica št. 3 za SoapUI
- 45 vprašanj in odgovorov za intervju za spletne storitve (RESTful, SOAP, varnostna vprašanja)