Deuchainn Mace. Tòiseachadh luath

Deuchainn Mace. Tòiseachadh luath

Hi uile. Tha sinn gu slaodach a’ nochdadh bho na faileasan agus a’ leantainn leis an t-sreath artaigilean mun toradh againn. Às deidh roimhe seo artaigil ath-bhreithneachaidh, fhuair sinn tòrr fios air ais (dearbhach sa mhòr-chuid), molaidhean agus aithisgean air bug. An-diugh bidh sinn a 'sealltainn Deuchainn Mace ann an gnìomh agus bidh e comasach dhut cuid de fheartan an tagraidh againn a mheas. Airson bogadh nas coileanta, tha mi a’ toirt comhairle dhut sùil a thoirt air na sgrìobhainnean againn aig http://docs-ru.testmace.com. Mar sin, rachamaid!

suidheachadh

Feuch an tòisich sinn leis a 'chasg. Tha an tagradh ri fhaighinn agus air a dhearbhadh air trì àrd-ùrlaran - Linux, Windows, MacOS. Faodaidh tu an stàlaichear airson an OS anns a bheil ùidh agad a luchdachadh sìos làrach-lìn againn. Airson luchd-cleachdaidh Linux tha e comasach a stàladh pasgan snap. Tha sinn gu mòr an dòchas gum faigh Bùth Microsoft agus an App Store timcheall air a dh’ aithghearr (A bheil e riatanach? Dè do bheachd?).

Suidheachadh deuchainneach

Thagh sinn an suidheachadh àbhaisteach a leanas mar chuspair an deuchainn againn:

  • Log a-steach: cleachdaiche - admin, facal-faire - facal-faire
  • cuir a-steach ùr
  • Feuch an dèan sinn cinnteach gun deach an clàr a chuir ris gu ceart

Nì sinn deuchainn air adhart https://testmace-quick-start.herokuapp.com/. Tha seo àbhaisteach json-frithealaidh, foirfe airson a leithid de thagraidhean a dhearbhadh. Tha sinn dìreach air cead le tòcan a chuir ris a h-uile slighe json-server agus chruthaich sinn dòigh logadh a-steach gus an comharra seo fhaighinn. Gluaisidh sinn mean air mhean, mean air mhean a’ leasachadh ar pròiseact.

A 'cruthachadh pròiseact agus a' feuchainn ri eintiteas a chruthachadh gun chead

An toiseach, cruthaichidh sinn pròiseact ùr (File->Pròiseact ùr). Ma tha thu a’ cur air bhog an tagradh airson a’ chiad uair, fosglaidh pròiseact ùr gu fèin-obrachail. An toiseach, feuchaidh sinn ri iarrtas a dhèanamh airson clàr ùr a chruthachadh (air eagal gu bheil cruthachadh chlàran rim faighinn gun chead). Tagh nithean bho chlàr-taice co-theacsa nód pròiseict Cuir nod -> Ceum Iarr. Suidhich an t-ainm nod cruthaich-puist. Mar thoradh air an sin, thèid nód ùr a chruthachadh sa chraoibh agus fosglaidh tab airson an nód seo. Suidhich sinn na paramadairean iarrtas a leanas:

Deuchainn Mace. Tòiseachadh luath

Ach, ma dh'fheuchas sinn ris an iarrtas a choileanadh, tillidh am frithealaiche còd 401 agus gun chead chan fhaigh sinn dad air an fhrithealaiche seo. Uill, san fharsaingeachd, mar a bhiodh dùil).

A’ cur iarrtas ceadachaidh ris

Mar a chaidh a ràdh roimhe, tha puing crìochnachaidh POST againn /login, a tha a’ gabhail json mar bhuidheann iarrtais den fhoirm: {"username": "<username>", "password": "<password>"}càite username и password (a-rithist, bhon pharagraf tòiseachaidh gu h-àrd) tha brìgh agad admin и password fa leth. Mar fhreagairt, tha am puing crìochnachaidh seo a’ tilleadh json like {"token": "<token>"}. Cleachdaidh sinn e airson cead. Cruthaichidh sinn Ceum Iarr nod le ainm login, gnathaichidh e sinnsear Pròiseact nód A’ cleachdadh slaodadh is leigeil às, gluais nód sònraichte sa chraoibh nas àirde na an nód cruthaich-puist. Nach suidhich sinn na paramadairean a leanas ris an iarrtas ùr a chaidh a chruthachadh:

Nach cuir sinn an t-iarrtas an gnìomh agus gheibh sinn an dà cheudamh còd leis an tòcan san fhreagairt. Rud mar seo:

Deuchainn Mace. Tòiseachadh luath

Refactoring: toirt air falbh dùblachadh fearainn

Gu ruige seo chan eil na h-iarrtasan ceangailte ri aon sgriobt. Ach chan e seo an aon eas-bhuannachd. Ma sheallas tu gu dlùth, chì thu gu bheil co-dhiù an àrainn air a dhùblachadh anns an dà iarrtas. Chan eil math. Tha an t-àm ann am pàirt seo den sgriobt san àm ri teachd ath-leasachadh, agus cuidichidh caochladairean sinn le seo.

Gu ciad tuairmse, bidh caochladairean a’ frithealadh an aon àite ’s a tha ann an innealan agus cànanan prògramaidh eile den aon seòrsa - a’ cur às do dhùblachadh, a’ meudachadh comas leughaidh, msaa. Faodaidh tu barrachd a leughadh mu chaochladairean ann an na sgrìobhainnean againn. Anns a 'chùis seo, bidh feum againn air caochladairean cleachdaiche.

Nach mìnich sinn caochladair aig ìre nód a’ Phròiseact domain le brìgh https://testmace-quick-start.herokuapp.com. Airson seo tha e riatanach

  • Fosgail an taba leis an nód seo agus cliog air ìomhaigh an àireamhair gu h-àrd air an làimh dheis
  • Cliog air + ADD ATHARRACHADH
  • Cuir a-steach ainm agus luach caochlaideach
    Anns a’ chùis againn, seallaidh an còmhradh leis a’ chaochladair a bharrachd mar seo:

Deuchainn Mace. Tòiseachadh luath

ceart gu leòr. A-nis, air sgàth oighreachd, is urrainn dhuinn an caochladair seo a chleachdadh ann an sliochd ìre neadachaidh sam bith. Anns a 'chùis againn, is iad sin comharran login и cruthaich-puist. Gus caochladair a chleachdadh ann an raon teacsa, feumaidh tu sgrìobhadh ${<variable_name>}. Mar eisimpleir, tha an url logadh a-steach air a thionndadh gu ${domain}/login, fa leth airson cruthaich-puist node url bidh e coltach ${domain}/posts.

Mar sin, air a stiùireadh le prionnsapal DRY, tha sinn air an suidheachadh a leasachadh beagan.

Sàbhail an tòcan gu caochladair

Leis gu bheil sinn a 'bruidhinn mu dheidhinn caochladairean, leudaichidh sinn beagan air a' chuspair seo. Aig an àm seo, ma thachras logadh a-steach soirbheachail, gheibh sinn comharra cead bhon t-seirbheisiche, a dh’ fheumas sinn ann an iarrtasan às deidh sin. Sàbhailidh sinn an comharra seo gu caochladair. Air sgàth thèid luach an caochladair a dhearbhadh nuair a thèid an sgriobt a choileanadh, bidh sinn a’ cleachdadh inneal sònraichte airson seo - caochladairean fiùghantach.

An toiseach, dèanamaid iarrtas logadh a-steach. Anns an taba Parsadh freagair, gluais an cursair thairis air an tòcan agus anns a’ chlàr co-theacsa (ris an canar an dàrna cuid le putan deas na luchaige no le bhith a’ briogadh air a’ phutan ...) tagh an rud Sònraich gu caochlaideach. Nochdaidh còmhradh leis na raointean a leanas:

  • Slighe — ciod am pàirt de'n fhreagairt a tha air a ghabhail (nar cùis tha e body.token)
  • Luach làithreach - dè an luach a tha air an t-slighe (anns a’ chùis againn is e seo an luach tòcan)
  • Ainm caochlaideach - ainm a 'chaochlaideach far a bheil Luach làithreach thèid a ghleidheadh. Anns a 'chùis againn bidh e token
  • Node - dè am fear de na sinnsearan a thèid an caochladair a chruthachadh Ainm caochlaideach. Feuch an tagh sinn Pròiseact

Tha an còmhradh crìochnaichte a’ coimhead mar seo:

Deuchainn Mace. Tòiseachadh luath

A-nis a h-uile uair a thèid an nód a chuir gu bàs login caochladair fiùghantach token thèid ùrachadh leis an luach ùr bhon fhreagairt. Agus thèid an caochladair seo a stòradh a-steach Pròiseact nód agus, le taing do oighreachd, bidh e ri fhaotainn do shliochd.

Gus faighinn gu caochladairean fiùghantach, feumaidh tu a chleachdadh caochladair togte $dynamicVar. Mar eisimpleir, gus faighinn gu tòcan a tha air a stòradh, feumaidh tu fònadh ${$dynamicVar.token}.

Bidh sinn a’ toirt seachad an tòcan ùghdarrais gu iarrtasan

Anns na ceumannan roimhe seo fhuair sinn an comharra ceadachaidh agus chan eil againn ach bann-cinn a chuir ris Authorization le ciall Bearer <tokenValue> anns a h-uile iarrtas a dh’ fheumas cead, a’ gabhail a-steach cruthaich-puist. Tha grunn dhòighean ann seo a dhèanamh:

  1. Dèan lethbhreac le làimh den tòcan agus cuir bann-cinn ceadachaidh ris na h-iarrtasan inntinneach. Tha an dòigh ag obair, ach tha a chleachdadh air a chuingealachadh a-mhàin ri iarrtasan den t-seòrsa “dèante is tilgeil air falbh”. Chan eil e iomchaidh airson sgriobtaichean a chuir gu bàs a-rithist
  2. Cleachd an comas-gnìomh ùghdarrachadh.
  3. Airson a chleachdadh cinn-cinn bunaiteach

Tha e coltach gu bheil cleachdadh an dàrna dòigh follaiseach, ach ann an co-theacsa an artaigil seo, tha an dòigh-obrach seo ... neo-inntinneach. Uill, dha-rìribh: tha an uidheamachd ceadachaidh agus minus eòlach dhut bho innealan eile (eadhon ma tha rudan mar sin againn oighreachd ùghdarrais) agus chan eil e coltach gun tog e ceistean.

Is e rud eile na cinn-cinn bunaiteach! Ann an ùine ghoirid, is e bannan-cinn HTTP a th’ ann an cinn-cinn bunaiteach a thèid a chur ris an iarrtas gu bunaiteach mura h-eil iad ciorramach. A’ cleachdadh a’ ghnìomh seo, faodaidh tu, mar eisimpleir, cead gnàthaichte a chuir an gnìomh no dìreach cuir às do dhùblachadh ann an sgriobtaichean. Cleachdaidh sinn am feart seo gus comharra a chuir anns na cinn-cinn.

Roimhe sin, shàbhail sinn gu ciallach an comharra gu caochladair fiùghantach $dynamicVar.token aig ìre nód pròiseict. Chan eil air fhàgail ach na leanas a dhèanamh:

  1. Sònraich an tiotal bunaiteach Authorization le brìgh Bearer ${$dynamicVar.token} aig ìre nód a’ phròiseict. Gus seo a dhèanamh, ann an eadar-aghaidh Pròiseact an nód feumaidh tu còmhradh fhosgladh le cinn bunaiteach (putan Ceannardan san oisean gu h-àrd air an làimh dheis) agus cuir tiotal co-fhreagarrach ris. Bidh an còmhradh leis na luachan lìonta a’ coimhead mar seo:
    Deuchainn Mace. Tòiseachadh luath
  2. Cuir à comas an bann-cinn seo bhon iarrtas logadh a-steach. Tha seo furasta a thuigsinn: aig àm logadh a-steach, chan eil comharradh againn fhathast agus stàlaidhidh sinn e leis an iarrtas seo. Mar sin, ann an eadar-aghaidh logadh a-steach an iarrtas anns an taba Ceannardan ann an sgìre na Oighreil thoir a-mach ceann-cinn an Ùghdarrais.

Sin e. A-nis thèid an bann-cinn ùghdarrachaidh a chuir ris a h-uile iarrtas a tha clann ann an nód a ’Phròiseict, ach a-mhàin an nód logadh a-steach. Tha e coltach gu bheil sgriobt againn deiseil aig an ìre seo mu thràth agus chan eil againn ach a chuir air bhog. Faodaidh tu an sgriobt a ruith le bhith a’ taghadh Run ann an clàr-taice co-theacsa nód a’ phròiseict.

A’ sgrùdadh ceartachd cruthachadh post

Aig an ìre seo, faodaidh an sgriobt againn logadh a-steach agus, a’ cleachdadh comharra cead, post a chruthachadh. Ach, feumaidh sinn dèanamh cinnteach gu bheil an t-ainm ceart air a’ phost ùr. Is e sin, gu dearbh, a tha air fhàgail ach na leanas a dhèanamh:

  • Cuir iarrtas airson post fhaighinn tro id,
  • Dèan cinnteach gu bheil an t-ainm a fhuaireadh bhon t-seirbheisiche a’ freagairt ris an ainm a chaidh a chuir nuair a chruthaicheas tu am post

Bheir sinn sùil air a 'chiad cheum. Leis gu bheil an luach id air a dhearbhadh aig àm cur an gnìomh sgriobt, feumaidh tu caochladair fiùghantach a chruthachadh (canaidh sinn e postId) bho nód cruthaich-puist aig ìre nód pròiseict. Tha fios againn mu thràth mar a nì thu seo, dìreach thoir sùil air an roinn Sàbhail an tòcan gu caochladair. Chan eil air fhàgail ach iarrtas a chruthachadh gus post fhaighinn a’ cleachdadh an id seo. Gus seo a dhèanamh, cruthaichidh sinn RequestStep faigh-phost leis na paramadairean a leanas:

  • Seòrsa iarrtas: GET
  • URL: ${domain}/posts/${$dynamicVar.postId}

Gus an dàrna ceum a chur an gnìomh, feumaidh sinn eòlas fhaighinn air Dearbhadh snaidhm. Is e nód Dearbhaidh a th’ ann an nód a leigeas leat seicichean a sgrìobhadh airson iarrtasan sònraichte. Faodaidh grunn dearbhaidhean (seic) a bhith anns gach nòta Dearbhaidh. Faodaidh tu barrachd a leughadh mu gach seòrsa dearbhaidhean bhon ar sgrìobhainnean. Cleachdaidh sinn Compare tagradh leis a 'ghnìomhaiche equal. Tha grunn dhòighean ann airson dearbhaidhean a chruthachadh:

  1. Fada. Cruthaich le làimh nód Dearbhaidh bhon chlàr co-theacsa den nód RequestStep. Anns an nód Dearbhadh a chaidh a chruthachadh, cuir ris an aithris ùidh agus lìon na raointean.
  2. Fast. Cruthaich nód Dearbhaidh còmhla ri tagradh bhon fhreagairt nód RequestStep a’ cleachdadh a’ chlàr co-theacsa

Cleachdaidh sinn an dàrna dòigh. Seo mar a bhios e coltach airson ar cùise.

Deuchainn Mace. Tòiseachadh luath

Dhaibhsan nach eil a’ tuigsinn, seo na tha a’ tachairt:

  1. Dèan iarrtas anns an nòta faigh-phost
  2. Anns an taba Parsadh freagair, cuir fòn chun chlàr-taice co-theacsa agus tagh Cruthaich dearbhadh -> Coimeas eadar -> Co-ionannachd

Mealaibh ur naidheachd, tha sinn air a’ chiad deuchainn againn a chruthachadh! Simple, nach e? A-nis faodaidh tu an sgriobt a ruith gu tur agus an toradh a mhealtainn. Chan eil air fhàgail ach a thoirt air ais beagan agus a thoirt a-mach title a-steach gu caochladair air leth. Ach fàgaidh sinn seo dhut mar obair-dachaigh)

co-dhùnadh

San stiùireadh seo, chruthaich sinn suidheachadh làn-chuimseach agus aig an aon àm rinn sinn ath-sgrùdadh air cuid de fheartan an toraidh againn. Gu dearbh, cha do chleachd sinn a h-uile gnìomh agus anns na h-artaigilean a leanas bheir sinn sealladh farsaing air comasan TestMace. Cùm sùil!

PS Dhaibhsan a tha ro leisg na ceumannan gu lèir ath-riochdachadh, tha sinn air clàradh gu coibhneil tasgaidh leis a’ phròiseact bhon artaigil. Faodaidh tu fhosgladh le File -> Pròiseact fosgailte agus tagh am pasgan Pròiseact.

Source: www.habr.com

Cuir beachd ann