Molweni nonke. Siphuma kancinci emthunzini kwaye siqhubeka nothotho lwamanqaku malunga nemveliso yethu. Emva koko
isicwangciso
Masiqale nge-banality. Isicelo siyafumaneka kwaye sivavanywa ngokwenene kumaqonga amathathu - Linux, Windows, MacOS. Ungakhuphela isifakeli se-OS onomdla kuyo
Imeko yovavanyo
Sikhethe le meko ilandelayo njengesifundo sethu sovavanyo:
- Ngena: umsebenzisi - admin, igama lokugqitha - igama lokugqitha
- yongeza ingeniso entsha
- Masijonge ukuba irekhodi yongezwa ngokuchanekileyo
Siza kuvavanya
Ukwenza iprojekthi kunye nokuzama ukwenza iqumrhu ngaphandle kwesigunyaziso
Okokuqala, makhe iprojekthi entsha (ifayile->Iprojekthi entsha). Ukuba usungula isicelo okokuqala, iprojekthi entsha iya kuvula ngokuzenzekelayo. Okokuqala, makhe sizame ukwenza isicelo sokwenza irekhodi elitsha (ukuba kukho iirekhodi zokudala iirekhodi ngaphandle kokugunyaziswa). Khetha izinto kwimenu yentsingiselo yenowudi yeProjekthi Yongeza i-node -> Cela iNyathelo. Seta igama lendawo yenza iposti. Ngenxa yoko, i-node entsha iya kwenziwa emthini kwaye ithebhu yale node iya kuvula. Masisete le parameters yesicelo ilandelayo:
- Uhlobo lwesicelo: POST
- url:
https://testmace-quick-start.herokuapp.com/posts - Isicelo somzimba: json ngexabiso
{"title": "New testmace quick start post"}
Ukuba wenze yonke into ngokuchanekileyo, i-interface iya kujongeka ngolu hlobo:
Nangona kunjalo, ukuba sizama ukuzalisekisa isicelo, umncedisi uya kubuyisela ikhowudi ye-401 kwaye ngaphandle kokugunyaziswa asiyi kufumana nantoni na kule seva. Ewe, ngokubanzi, njengoko kulindelwe).
Ukongeza isicelo sogunyaziso
Njengoko sele kukhankanyiwe, sine-POST endpoint /login
, ethatha i-json njengequmrhu lesicelo lefom: {"username": "<username>", "password": "<password>"}
phi username
ΠΈ password
(kwakhona, kumhlathi oyintshayelelo ongentla) zineentsingiselo admin
ΠΈ password
ngokulandelelanayo. Ukuphendula, le siphelo sibuyisela i-json njenge {"token": "<token>"}
. Siza kuyisebenzisela ukugunyazisa. Masidale Cela iNyathelo indawo enegama Ngema, uya kuba sisinyanya iprojekthi indawo yokusebenzela Usebenzisa ukutsala kunye nokuwisa, hambisa i-node enikiweyo emthini phezulu kune-node yenza iposti. Masisete ezi parameters zilandelayo kwisicelo esitsha esitsha:
- Uhlobo lwesicelo: POST
- url:
https://testmace-quick-start.herokuapp.com/login - Isicelo somzimba: json ngexabiso
{"username": "admin", "password": "password"}
Masiqhube isicelo kwaye sifumane ikhowudi yamakhulu amabini kunye nomqondiso kwimpendulo. Into efana nale:
Ukuhlaziya: ukususa uphindaphindo lwesizinda
Ukuza kuthi ga ngoku izicelo azidityaniswanga kwiscript esinye. Kodwa oku akukuphela kokusilela. Ukuba ujongisisa, uya kuqaphela ukuba ubuncinci i-domain iphindwa kabini kwizicelo. Akulunganga. Lixesha lokuba siphinde senze le nxalenye yeskripthi sexesha elizayo, kwaye izinto eziguquguqukayo ziya kusinceda kule nto.
Kuqikelelo lokuqala, izinto eziguquguqukayo zisebenza indima efanayo nakwezinye izixhobo ezifanayo kunye neelwimi zenkqubo-ukuphelisa ukuphindaphinda, ukwandisa ukufundeka, njl. Unokufunda ngakumbi malunga neenguqu kwi
Masichaze ukuguquguquka kwinqanaba leNode yeProjekthi domain
ngentsingiselo https://testmace-quick-start.herokuapp.com
. Kuba oku kuyimfuneko
- Vula ithebhu ngale node kwaye ucofe i icon yesibali ngasekunene phezulu
- Cofa apha + YONZA IYAHLUKA
- Ngenisa igama eliguquguqukayo kunye nexabiso
Kwimeko yethu, incoko yababini enenguqu eyongeziweyo iya kujongeka ngolu hlobo:
KULUNGILE. Ngoku, ngenxa yelifa, sinokusebenzisa oku kuguquguquka kwinzala yalo naliphi na inqanaba lokuzalela. Kwimeko yethu ezi ngamaqhuqhuva Ngema ΠΈ yenza iposti. Ukuze usebenzise uguqulo kwindawo yokubhaliweyo, kufuneka ubhale ${<variable_name>}
. Umzekelo, i-url yokungena iguqulelwa kuyo ${domain}/login
, ngokulandelelanayo ngenxa yenza iposti i-url ye-node iya kujongeka ngathi ${domain}/posts
.
Ngaloo ndlela, ngokukhokelwa ngumgaqo we-DRY, siye sayiphucula kancinane imeko.
Gcina uphawu kuguquko
Ekubeni sithetha ngezinto eziguquguqukayo, masenze ukwandisa kwesi sihloko kancinci. Okwangoku, kwimeko yokungena ngempumelelo, sifumana kwi-server ithokheni yogunyaziso, esiya kuyidinga kwizicelo ezilandelayo. Masigcine lo mqondiso kwinguqu. Ngokuba ixabiso loguqulo luya kumiselwa ngexesha lokwenziwa kwescript, sisebenzisa indlela ekhethekileyo yoku -
Okokuqala, masenze isicelo sokungena. Kwithebhu Icazululiwe phendula, yisa isalathisi phezu kophawu nakwimenyu yentsingiselo (ebizwa ngokuba ngeqhosha lasekunene lemouse okanye ngokunqakraza kwiqhosha ...) khetha umba. Yabela ukwahluka. Incoko yababini iya kuvela ngemihlaba elandelayo:
- Indlela - yeyiphi inxalenye yempendulo ethathiweyo (kwimeko yethu
body.token
) - Ixabiso langoku β leliphi ixabiso elilele ecaleni kweNdlela (kwimeko yethu eli lixabiso lophawu)
- Igama eliguqukayo - igama loguqulo apho Ixabiso langoku iya kugcinwa. Kwimeko yethu kuya kuba njalo
token
- INode - apho i-oothers i-variable iyakwenziwa Igama eliguqukayo. Masikhethe iProjekthi
Incoko yababini egqityiweyo ibonakala ngolu hlobo:
Ngoku ngalo lonke ixesha i-node isenziwa Ngema ukuguquguquka okuguquguqukayo token
iya kuhlaziywa ngexabiso elitsha kwimpendulo. Kwaye oku kuguquguquka kuya kugcinwa ngaphakathi iprojekthi i-node kwaye, ngenxa yelifa, iya kufumaneka kwinzala.
Ukufikelela kwiinguqu eziguquguqukayo, kufuneka usebenzise $dynamicVar
. Umzekelo, ukufikelela kwithokheni egciniweyo, kufuneka ufowunele ${$dynamicVar.token}
.
Sidlulisela ithokheni yogunyaziso kwizicelo
Kumanyathelo angaphambili sifumene ithokheni yogunyaziso kwaye konke okufuneka sikwenze kukongeza isihloko Authorization
ngentsingiselo Bearer <tokenValue>
kuzo zonke izicelo ezifuna ugunyaziso, kubandakanywa yenza iposti. Kukho iindlela ezininzi zokwenza oku:
- Khuphela ithokheni ngesandla kwaye wongeze isihloko sogunyaziso kwizicelo zomdla. Indlela iyasebenza, kodwa ukusetyenziswa kwayo kunqunyelwe kuphela kwizicelo zohlobo "olwenziwayo lwaphoswa kude". Ayilungelanga ukwenziwa ngokuphindaphindiweyo kwezikripthi
- Sebenzisa umsebenzi
ugunyaziso . - Sebenzisa
iiheader ezingagqibekanga
Ukusebenzisa indlela yesibini kubonakala kucacile, kodwa kumxholo weli nqaku, le ndlela ... ayinamdla. Ewe, eneneni: indlela yogunyaziso dibanisa thabatha iqhelekile kuwe kwezinye izixhobo (nokuba sinezinto ezifana
Enye into ziiheader ezingagqibekanga! Ngamafutshane, iiheader ezingagqibekanga zizuzwa njengeeheader zeHTTP ezongezelelwe kwisicelo ngokungagqibekanga ngaphandle kokuba zivaliwe ngokucacileyo. Usebenzisa olu sebenziso, ungenza, umzekelo, uphumeze ugunyaziso lwesiko okanye ukhuphe ngokulula uphindaphindo kwizikripti. Masisebenzise olu phawu ukuze sigqithise uphawu kwiiheda.
Ngaphambili, sigcine ngobulumko ithokheni kwinguqu eguqukayo $dynamicVar.token
kumgangatho weProjekthi node. Okuseleyo kukwenza oku kulandelayo:
- Chaza isihloko esihlala sihleli
Authorization
ngentsingiseloBearer ${$dynamicVar.token}
kumgangatho weProjekthi node. Ukwenza oku, kujongano lweProjekthi yenode kufuneka uvule incoko yababini enezihloko ezingagqibekanga (iqhosha Iintloko kwikona ephezulu ngasekunene) kwaye wongeze isihloko esihambelanayo. Incoko yababini enamaxabiso agcwalisiweyo iya kujongeka ngolu hlobo:
- Khubaza esi sihloko ukusuka kwisicelo sokungena. Oku kuyaqondakala: ngexesha lokungena, asikabi nayo ithokheni kwaye siya kuyifaka kunye nesi sicelo. Ke ngoko, kujongano lokungena lwesicelo kwisithuba Iintloko kwindawo ye Ilifa sukukhangela iheader yoGunyaziso.
Kuko konke. Ngoku iheader yogunyaziso iya kongezwa kuzo zonke izicelo ezingabantwana beProjekthi node, ngaphandle kwendawo yokungena. Kuyavela ukuba kweli nqanaba sele sineskripthi esilungile kwaye konke okufuneka sikwenze kukuyisungula. Ungaqhuba iskripthi ngokukhetha Run kwimenu yemeko yendawo yeProjekthi.
Ukujonga ukuchaneka kokudalwa kweposi
Ngeli nqanaba, iskripthi sethu sinokungena kwaye, usebenzisa ithokheni yokugunyazwa, yenza isithuba. Nangona kunjalo, kufuneka siqinisekise ukuba isithuba esitsha esenziwe sinegama elichanekileyo. Oko kukuthi, eyona nto iseleyo kukwenza oku kulandelayo:
- Thumela isicelo sokufumana isithuba nge-id,
- Khangela ukuba igama elifunyenwe kumncedisi lihambelana negama elithunyelweyo xa usenza iposti
Makhe sijonge inyathelo lokuqala. Ukusukela ukuba ixabiso le-id limiselwe ngexesha lokwenziwa kwescript, kufuneka wenze uguqulo oluguquguqukayo (masiyibize. postId
) ukusuka kwindawo yenza iposti kumgangatho weProjekthi node. Sele siyayazi indlela yokwenza oku, jonga nje kwicandelo Gcina uphawu kuguquko. Konke okuseleyo kukudala isicelo sokufumana isithuba usebenzisa le id. Ukwenza oku, makhe senze i-RequestStep fumana-isithuba ngezi parameters zilandelayo:
- Uhlobo lwesicelo: GET
- URL: ${domain}/posts/${$dynamicVar.postId}
Ukuze siphumeze inyathelo lesibini, kufuneka siqhelane nalo Compare
inkcazo ngomsebenzi equal
. Kukho iindlela ezininzi zokudala iziqinisekiso:
- Inde. Yenza i-Assertion node ngokuzenzela kwimenyu yomxholo ye-RequestStep node. Kwindawo yoQinisekiso eyenziweyo, yongeza uqinisekiso lomdla kwaye ugcwalise imimandla.
- Ukukhawuleza. Yenza i-Assertion node kunye ne-assertion evela kwi-RequestStep node impendulo usebenzisa imenyu yomxholo
Masisebenzise indlela yesibini. Oku kuya kujongeka njani kwityala lethu.
Kwabo bangayiqondiyo nantsi into eyenzekayo:
- Faka isicelo kwi-node fumana-isithuba
- Kwithebhu Icazululiwe phendula, fowunela imenyu yentsingiselo uze ukhethe Yenza inkcazo -> thelekisa -> Equal
Sivuyisana nawe, sidale uvavanyo lwethu lokuqala! Kulula, akunjalo? Ngoku unokuqhuba iskripthi ngokupheleleyo kwaye ujabulele umphumo. Ekuphela kwento eseleyo kukuyihlaziya kancinci kwaye uyikhuphe title
kwinguqu eyahlukileyo. Kodwa sizokushiya njengomsebenzi wasekhaya)
isiphelo
Kwesi sikhokelo, senze imeko egcweleyo kwaye kwangaxeshanye sihlolisise ezinye zeempawu zemveliso yethu. Ewe, asizange sisebenzise yonke imisebenzi kwaye kumanqaku alandelayo siza kubonelela ngenkcazo ebanzi yezakhono zeTestMace. Hla umamele!
I-PS Kwabo bavila kakhulu ukuvelisa onke amanyathelo, siye sabhala ngobubele
umthombo: www.habr.com