Sanibonani nonke. Kancane kancane siphuma emthunzini futhi siqhubeka nochungechunge lwama-athikili mayelana nomkhiqizo wethu. Ngemva
setting
Ake siqale nge-banality. Uhlelo lokusebenza luyatholakala futhi luhlolwe empeleni kumapulatifomu amathathu - Linux, Windows, MacOS. Ungakwazi ukulanda isifaki se-OS onentshisekelo kuyo
Isimo sokuhlola
Sikhethe isimo esilandelayo esijwayelekile njengesihloko sethu sokuhlola:
- Ngena ngemvume: umsebenzisi - admin, iphasiwedi - iphasiwedi
- engeza okusha
- Ake sihlole ukuthi irekhodi lengezwe ngendlela efanele yini
Sizohlola
Ukudala iphrojekthi nokuzama ukudala ibhizinisi ngaphandle kokugunyazwa
Okokuqala, ake sakhe iphrojekthi entsha (Ifayela->Iphrojekthi entsha). Uma wethula uhlelo lokusebenza okokuqala ngqa, iphrojekthi entsha izovuleka ngokuzenzakalelayo. Okokuqala, ake sizame ukwenza isicelo sokwenza irekhodi elisha (uma kwenzeka ukudala amarekhodi kutholakala ngaphandle kokugunyazwa). Khetha izinto kumenyu yokuqukethwe yenodi yephrojekthi Engeza i-node -> CelaIsinyathelo. Setha igama lenodi ukuze dala-okuthunyelwe. Ngenxa yalokho, kuzokwakhiwa i-node entsha esihlahleni futhi ithebhu yale nodi izovuleka. Masisethe amapharamitha wesicelo alandelayo:
- Uhlobo lwesicelo: THUMELA
- i-url:
https://testmace-quick-start.herokuapp.com/posts - Umzimba wesicelo: json onevelu
{"title": "New testmace quick start post"}
Uma wenze konke ngendlela efanele, i-interface izobukeka kanje:
Kodwa-ke, uma sizama ukufeza isicelo, iseva izobuyisela ikhodi ye-401 futhi ngaphandle kokugunyazwa ngeke sithole lutho kule seva. Yebo, ngokujwayelekile, njengoba bekulindelekile).
Ukwengeza isicelo sokugunyazwa
Njengoba sekushiwo, sinephoyinti lokugcina elithi THUMELA /login
, okuthatha i-json njengesigungu sesicelo sefomu: {"username": "<username>", "password": "<password>"}
kuphi username
и password
(futhi, kusukela endimeni yesethulo engenhla) zinezincazelo admin
и password
ngokulandelana. Ekuphenduleni, leli phuzu lokugcina libuyisela i-json like {"token": "<token>"}
. Sizoyisebenzisela ukugunyazwa. Asidale CelaIsinyathelo indawo enegama Ngena ngemvume, izosebenza njengedlozi Project indawo Usebenzisa ukudonsa nokuwisa, hambisa inodi enikiwe esihlahleni ibe phezulu kunenodi dala-okuthunyelwe. Masisethe amapharamitha alandelayo esicelweni esisanda kwakhiwa:
- Uhlobo lwesicelo: THUMELA
- i-url:
https://testmace-quick-start.herokuapp.com/login - Umzimba wesicelo: json onevelu
{"username": "admin", "password": "password"}
Ake senze isicelo futhi sithole ikhodi yamakhulu amabili enophawu empendulweni. Okufana nalokhu:
Ukwenza kabusha: ukususa impinda yesizinda
Kuze kube manje izicelo azixhunywanga kumbhalo owodwa. Kodwa lokhu akuyona ukuphela komphumela. Uma ubhekisisa kahle, uzobona ukuthi okungenani isizinda siphindaphindwe kuzo zombili izicelo. Akukuhle. Isikhathi sokwenza kabusha le ngxenye yeskripthi esizayo, futhi okuhlukile kuzosisiza ngalokhu.
Ekulinganiseni kokuqala, okuguquguqukayo kusebenza indima efanayo nakwamanye amathuluzi afanayo nezilimi zokuhlela - ukuqeda ukuphindaphinda, ukwandisa ukufundeka, njll. Ungafunda kabanzi mayelana nama-variables ku
Ake sichaze okuguquguqukayo ezingeni lenodi yeProjekthi domain
ngencazelo https://testmace-quick-start.herokuapp.com
. Kulokhu kuyadingeka
- Vula ithebhu ngale nodi bese uchofoza isithonjana sokubala phezulu kwesokudla
- Chofoza ku- + ENGEZA OKUHLUKILEYO
- Faka igama eliguquguqukayo kanye nenani
Esimweni sethu, ibhokisi eline-variable eyengeziwe izobukeka kanje:
KULUNGILE. Manje, ngenxa yefa, singasebenzisa lokhu kuhlukahluka enzalweni yanoma yiliphi izinga lokuzalela. Esimeni sethu lezi zingamanodi Ngena ngemvume и dala-okuthunyelwe. Ukuze usebenzise okuguquguqukayo endaweni yombhalo, udinga ukubhala ${<variable_name>}
. Isibonelo, i-url yokungena iguqulelwa kuye ${domain}/login
, ngokulandelana kwe dala-okuthunyelwe i-url ye-node izobukeka ${domain}/posts
.
Ngakho, siqondiswa isimiso se-DRY, sisithuthukisile kancane isimo.
Londoloza ithokheni kokuguquguqukayo
Njengoba sikhuluma ngezinto eziguquguqukayo, ake sandise lesi sihloko kancane. Okwamanje, uma kwenzeka ukungena ngemvume ngempumelelo, sithola ithokheni yokugunyazwa evela kuseva, esizoyidinga ezicelweni ezilandelayo. Masilondoloze le tokheni kokuguquguqukayo. Ngoba inani lokuguquguquka lizonqunywa ngesikhathi sokwenziwa kombhalo, sisebenzisa indlela ekhethekile yalokhu -
Okokuqala, masenze isicelo sokungena ngemvume. Kuthebhu Kuhlukanisiwe phendula, hambisa ikhesa phezu kwethokheni nakumenyu yokuqukethwe (ebizwa ngenkinobho yegundane engakwesokudla noma ngokuchofoza inkinobho ...) khetha into Yabela okuguquguqukayo. Ingxoxo izovela nezinkambu ezilandelayo:
- Indlela - iyiphi ingxenye yempendulo ethathiwe (kithina
body.token
) - Inani lamanje - yiliphi inani elilele eNdleleni (kithi leli inani lethokheni)
- Igama eliguquguqukayo - igama lokuguquguquka lapho Inani lamanje izogcinwa. Esimeni sethu kuzoba njalo
token
- I-Node - kumadlozi kuzokwenziwa okuguquguqukayo Igama eliguquguqukayo. Asikhethe Iphrojekthi
Ibhokisi eliqediwe libukeka kanje:
Manje ngaso sonke isikhathi lapho i-node ikhishwa Ngena ngemvume okuguquguqukayo okuguquguqukayo token
izobuyekezwa ngevelu entsha evela empendulweni. Futhi lokhu okuguquguqukayo kuzogcinwa ngaphakathi Project i-node futhi, ngenxa yefa, izotholakala kunzalo.
Ukufinyelela okuguquguqukayo okuguquguqukayo, kufanele usebenzise $dynamicVar
. Isibonelo, ukuze ufinyelele ithokheni egciniwe, udinga ukushayela ${$dynamicVar.token}
.
Sidlulisela ithokheni yokugunyazwa ezicelweni
Ezinyathelweni ezedlule sithole ithokheni yokugunyazwa futhi okudingeka sikwenze nje ukwengeza unhlokweni Authorization
ngencazelo Bearer <tokenValue>
kuzo zonke izicelo ezidinga ukugunyazwa, okuhlanganisa dala-okuthunyelwe. Kunezindlela eziningana zokwenza lokhu:
- Kopisha ithokheni mathupha bese wengeza unhlokweni wokugunyaza ezicelweni zenzuzo. Indlela iyasebenza, kodwa ukusetshenziswa kwayo kunqunyelwe kuphela ezicelweni zohlobo "olwenziwa futhi lwalahlwa". Ayifanele ukusetshenziswa okuphindaphindiwe kwezikripthi
- Sebenzisa ukusebenza
ukugunyazwa . - Sebenzisa
izihloko ezizenzakalelayo
Ukusebenzisa indlela yesibili kubonakala kusobala, kodwa kumongo walesi sihloko, le ndlela ... ayithakazelisi. Hhayi-ke, empeleni: indlela yokugunyaza kanye nokususa uyayazi kusukela kwamanye amathuluzi (ngisho noma sinezinto ezifana nazo
Enye into izihloko ezizenzakalelayo! Kafushane, izihloko ezizenzakalelayo ziyizihloko ze-HTTP ezizuzwa njengefa ezengezwa esicelweni ngokuzenzakalela ngaphandle kwalapho zikhutshazwe ngokusobala. Ngokusebenzisa lokhu kusebenza, ungakwazi, isibonelo, ukusebenzisa ukugunyazwa ngokwezifiso noma ukususa ukuphindaphinda emibhalweni. Masisebenzise lesi sici ukuze sidlulise ithokheni kunhlokweni.
Ngaphambilini, silondoloze ithokheni ngobuhlakani kokuguquguqukayo $dynamicVar.token
ezingeni le-Project node. Okusele ukwenza lokhu okulandelayo:
- Chaza isihloko esizenzakalelayo
Authorization
ngencazeloBearer ${$dynamicVar.token}
ezingeni le-Project node. Ukuze wenze lokhu, kusixhumi esibonakalayo seProjekthi se-node udinga ukuvula ibhokisi elinezihloko ezizenzakalelayo (inkinobho Izihloko ekhoneni eliphezulu kwesokudla) bese wengeza isihloko esihambisanayo. Ingxoxo enamanani agcwalisiwe izobukeka kanje:
- Khubaza lesi sihloko esicelweni sokungena ngemvume. Lokhu kuyaqondakala: ngesikhathi sokungena ngemvume, okwamanje asinalo ithokheni futhi sizolifaka nalesi sicelo. Ngakho-ke, ku-interface yokungena yesicelo kuthebhu Izihloko endaweni yase Ilifa susa ukumaka isihloko sokugunyaza.
Yilokho kuphela. Manje isihloko sokugunyazwa sizokwengezwa kuzo zonke izicelo ezingabantwana benodi yeProjekthi, ngaphandle kwendawo yokungena ngemvume. Kuvele ukuthi kulesi sigaba sesivele sinescript esilungile futhi okumele sikwenze wukuyethula. Ungaqalisa iskripthi ngokukhetha Qalisa kumenyu yokuqukethwe yenodi yephrojekthi.
Ihlola ukulunga kokudalwa kokuthunyelwe
Kulesi sigaba, umbhalo wethu ungangena futhi, usebenzisa ithokheni yokugunyazwa, udale okuthunyelwe. Nokho, sidinga ukwenza isiqiniseko sokuthi okuthunyelwe okusanda kwakhiwa kunegama elilungile. Okusho ukuthi, empeleni, okusele ukwenza lokhu okulandelayo:
- Thumela isicelo sokuthola iposi nge-id,
- Hlola ukuthi igama elitholwe kuseva lifana negama elithunyelwe lapho udala okuthunyelwe
Ake sibheke isinyathelo sokuqala. Njengoba inani le-id linqunywa ngesikhathi kusetshenziswa iskripthi, udinga ukudala okuguquguqukayo (ake sikubize postId
) kusuka ku-node dala-okuthunyelwe ezingeni le-Project node. Sesiyazi ukuthi sikwenza kanjani lokhu, vele ubheke esigabeni Londoloza ithokheni kokuguquguqukayo. Okusele nje ukudala isicelo sokuthola iposi usebenzisa le-id. Ukuze senze lokhu, masidale Isinyathelo sokucela thola-iposi ngamapharamitha alandelayo:
- Uhlobo lwesicelo: GET
- I-URL: ${domain}/posts/${$dynamicVar.postId}
Ukuze sisebenzise isinyathelo sesibili, kudingeka sijwayelane naso Compare
ukugomela no-opharetha equal
. Kunezindlela eziningana zokudala izigomela:
- Yinde. Dala mathupha inodi Yokugomela kusukela kumenyu yokuqukethwe yenodi ye-RequestStep. Kunodi yokugomela edaliwe, engeza ukugomela kokuthakaselayo bese ugcwalisa izinkambu.
- Ngokushesha. Dala i-Assertion node kanye nokugomela okuvela ku-RequestStep node impendulo usebenzisa imenyu yokuqukethwe
Masisebenzise indlela yesibili. Yilokhu okuzobukeka ngayo ecaleni lethu.
Kulabo abangaqondi, nakhu okwenzekayo:
- Faka isicelo ku-node thola-iposi
- Kuthebhu Kuhlukanisiwe phendula, shayela imenyu yokuqukethwe bese ukhetha Dala isisho -> Qhathanisa -> Equal
Siyakuhalalisela, sidale ukuhlolwa kwethu kokuqala! Kulula, akunjalo? Manje usungakwazi ukusebenzisa iskripthi ngokuphelele futhi ujabulele umphumela. Osekusele nje wukuyenza kabusha kancane bese uyikhipha title
ibe okuguquguqukayo okuhlukile. Kodwa sizokushiyela lokhu njengomsebenzi wesikole)
isiphetho
Kulo mhlahlandlela, sidale isimo esigcwele futhi ngesikhathi esifanayo sibuyekeze ezinye izici zomkhiqizo wethu. Yebo, asizange sisebenzise konke ukusebenza futhi ezihlokweni ezilandelayo sizohlinzeka ngemininingwane eningiliziwe yamakhono e-TestMace. Hlala ubukele!
PS Kulabo abavilapha kakhulu ukukhiqiza kabusha zonke izinyathelo, sibhale ngomusa
Source: www.habr.com