TestMace. Saurin farawa

TestMace. Saurin farawa

Assalamu alaikum. Muna fitowa sannu a hankali daga inuwa kuma muna ci gaba da jerin labaran game da samfurinmu. Bayan da suka gabata labarin bita, mun sami amsa mai yawa (mafi yawa tabbatacce), shawarwari da rahotannin kwaro. Yau za mu nuna TestMace a aikace kuma zaku iya jin daɗin wasu fasalulluka na aikace-aikacen mu. Don cikakken nutsewa, ina ba ku shawara ku koma ga takaddun mu a http://docs-ru.testmace.com. Don haka, mu tafi!

saitin

Bari mu fara da banality. Ana samun aikace-aikacen kuma a zahiri an gwada shi akan dandamali uku - Linux, Windows, MacOS. Kuna iya saukar da mai sakawa don OS ɗin da kuke sha'awar gidan yanar gizon mu. Ga masu amfani da Linux yana yiwuwa a girka kunshin karye. Muna fatan da gaske Microsoft Store da App Store za su zo kusa da shi (Shin ya zama dole? Me kuke tunani?).

Yanayin gwaji

Mun zaɓi daidaitaccen yanayi mai zuwa a matsayin jigon gwajin mu:

  • Login: mai amfani - admin, kalmar sirri - kalmar sirri
  • ƙara sabon shigarwa
  • Bari mu duba cewa an ƙara rikodin daidai

Za mu gwada https://testmace-quick-start.herokuapp.com/. Wannan al'ada ce json - uwar garken, cikakke don gwada irin waɗannan aikace-aikacen. Mun ƙara izini ta alama zuwa duk hanyoyin json-uwar garken kuma mun ƙirƙiri hanyar shiga don karɓar wannan alamar. Za mu ci gaba a hankali, sannu a hankali inganta aikin mu.

Ƙirƙirar aiki da ƙoƙarin ƙirƙirar mahalli ba tare da izini ba

Da farko, bari mu ƙirƙiri sabon aiki (fayil->Sabuwar aikin). Idan kuna ƙaddamar da aikace-aikacen a karon farko, sabon aikin zai buɗe ta atomatik. Da farko, bari mu yi ƙoƙarin yin buƙatun ƙirƙirar sabon rikodin (idan akwai ƙirƙira bayanan ba tare da izini ba). Zaɓi abubuwa daga menu na mahallin kumburin aikin Ƙara kumburi -> Matakin nema. Saita sunan kumburi zuwa ƙirƙirar-post. A sakamakon haka, za a ƙirƙiri sabon kumburi a cikin bishiyar kuma za a buɗe shafin don wannan kumburi. Bari mu saita sigogin buƙatun masu zuwa:

TestMace. Saurin farawa

Koyaya, idan muka yi ƙoƙarin cika buƙatar, uwar garken zai dawo da lambar 401 kuma ba tare da izini ba ba za mu sami komai akan wannan sabar ba. To, a gaba ɗaya, kamar yadda ake tsammani).

Ƙara buƙatar izini

Kamar yadda aka fada, muna da ƙarshen POST /login, wanda ke ɗaukar json a matsayin ƙungiyar buƙata ta fom: {"username": "<username>", "password": "<password>"}inda username и password (kuma, daga farkon sakin layi na sama) suna da ma'ana admin и password bi da bi. A cikin martani, wannan ƙarshen ƙarshen ya dawo json kamar {"token": "<token>"}. Za mu yi amfani da shi don izini. Mu yi halitta Matakin nema kumburi da suna shiga, zai yi aiki a matsayin kakanni Project kumburi Yin amfani da ja-da-jigon, matsar da kumburin da aka bayar a cikin bishiyar sama da kumburin ƙirƙirar-post. Bari mu saita sigogi masu zuwa zuwa sabuwar buƙatar da aka ƙirƙira:

Bari mu aiwatar da buƙatar kuma mu karɓi lambar ɗari biyu tare da alamar a cikin martani. Wani abu kamar haka:

TestMace. Saurin farawa

Refactoring: cire kwafin yanki

Ya zuwa yanzu ba a haɗa buƙatun cikin rubutu ɗaya ba. Amma wannan ba shine kawai drawback ba. Idan ka duba da kyau, za ka lura cewa aƙalla an kwafi yankin a cikin buƙatun biyun. Ba kyau. Lokaci ya yi da za a sake fasalin wannan ɓangaren rubutun na gaba, kuma masu canji za su taimake mu da wannan.

Zuwa ƙima na farko, masu canji suna aiki iri ɗaya kamar na sauran kayan aikin makamantansu da harsunan shirye-shirye - kawar da kwafi, haɓaka karantawa, da sauransu. Kuna iya karanta ƙarin game da masu canji a ciki takardun mu. A wannan yanayin, za mu buƙaci masu canji masu amfani.

Bari mu ayyana maɓalli a matakin kumburin aikin domain tare da ma'ana https://testmace-quick-start.herokuapp.com. Don wannan ya zama dole

  • Bude shafin tare da wannan kumburi kuma danna gunkin ƙididdiga a saman dama
  • Danna kan + KARA KYAUTA
  • Shigar da m suna da ƙima
    A cikin yanayinmu, maganganun da aka ƙara masu canji za su yi kama da haka:

TestMace. Saurin farawa

KO. Yanzu, saboda gado, za mu iya amfani da wannan canji a cikin zuriyar kowane matakin gida. A cikin yanayinmu waɗannan nodes ne shiga и ƙirƙirar-post. Domin amfani da maɓalli a filin rubutu, kuna buƙatar rubutawa ${<variable_name>}. Misali, an canza url login zuwa ${domain}/login, bi da bi don ƙirƙirar-post node url zai yi kama ${domain}/posts.

Don haka, bisa jagorancin ƙa'idar DRY, mun ɗan inganta yanayin.

Ajiye alamar zuwa mai canzawa

Tun da muna magana ne game da masu canji, bari mu faɗaɗa kan wannan batu kaɗan. A halin yanzu, idan an sami nasarar shiga, muna karɓar alamar izini daga uwar garken, wanda za mu buƙaci a cikin buƙatun na gaba. Bari mu ajiye wannan alamar zuwa ma'auni. Domin Za a ƙayyade ƙimar ma'auni yayin aiwatar da rubutun, muna amfani da tsari na musamman don wannan - masu canji masu ƙarfi.

Da farko, bari mu yi buƙatar shiga. A cikin tab Fassara amsa, matsar da siginan kwamfuta akan alamar kuma a cikin menu na mahallin (wanda ake kira ko dai tare da maɓallin linzamin kwamfuta na dama ko ta danna maɓallin ...) zaɓi abu. Sanya zuwa mai canzawa. Za a bayyana maganganu tare da fage masu zuwa:

  • hanyar - wane bangare na amsar da aka dauka (a yanayinmu shine body.token)
  • Ƙimar yanzu - menene darajar ta ta'allaka a kan Hanyar (a cikin yanayinmu wannan shine ƙimar alamar)
  • Sunan mai suna - sunan mai canzawa inda Ƙimar yanzu za a kiyaye. A cikin yanayinmu zai kasance token
  • kumburi - a cikin wanne ne daga cikin kakanni za a ƙirƙira mai canzawa Sunan mai suna. Bari mu zaɓi Project

Maganar da aka kammala tayi kama da haka:

TestMace. Saurin farawa

Yanzu duk lokacin da aka kashe kumburi shiga m m token za a sabunta tare da sabon darajar daga amsa. Kuma wannan canjin za a adana shi a ciki Project kumburi kuma, godiya ga gado, za a samu ga zuriya.

Don samun dama ga masu canji masu ƙarfi, dole ne ku yi amfani da su ginannen canji $dynamicVar. Misali, don samun isa ga alamar da aka adana, kuna buƙatar kira ${$dynamicVar.token}.

Mun shigar da alamar izini cikin buƙatun

A cikin matakan da suka gabata mun sami alamar izini kuma duk abin da muke buƙatar yi shine ƙara rubutun kai Authorization tare da ma'ana Bearer <tokenValue> a cikin duk buƙatun da ke buƙatar izini, gami da ƙirƙirar-post. Akwai hanyoyi da yawa don yin haka:

  1. Kwafi alamar da hannu kuma ƙara taken izini zuwa buƙatun ban sha'awa. Hanyar tana aiki, amma amfani da ita yana iyakance kawai ga buƙatun nau'in "an yi da jefarwa". Bai dace da maimaita aiwatar da rubutun ba
  2. Yi amfani da aikin izini.
  3. Amfani tsoho headers

Yin amfani da hanya ta biyu a bayyane yake, amma a cikin mahallin wannan labarin, wannan hanyar ba ta da sha'awa. To, da gaske: tsarin ba da izini da ragi ya saba muku daga wasu kayan aikin (ko da muna da abubuwa kamar gadon izini) kuma da wuya a tada tambayoyi.

Wani abu shi ne tsoho headers! A taƙaice, tsoffin kanun labarai suna gadon taken HTTP waɗanda aka ƙara zuwa buƙatun ta tsohuwa sai dai idan an kashe su. Amfani da wannan aikin, zaku iya, alal misali, aiwatar da izini na al'ada ko kawar da kwafi a cikin rubutun. Bari mu yi amfani da wannan fasalin don ƙaddamar da alama a cikin rubutun kai.

A baya, mun adana alamar a hankali a cikin madaidaicin canji $dynamicVar.token a matakin kumburin Project. Abin da ya rage shi ne yin haka:

  1. Ƙayyade taken tsoho Authorization tare da ma'ana Bearer ${$dynamicVar.token} a matakin kumburin Project. Don yin wannan, a cikin Project interface na kumburi kuna buƙatar buɗe tattaunawa tare da taken tsoho (button Kai a saman kusurwar dama) kuma ƙara taken da ya dace. Tattaunawar tare da cikakkun dabi'u za su yi kama da haka:
    TestMace. Saurin farawa
  2. Kashe wannan taken daga buƙatar shiga. Wannan abu ne mai fahimta: a lokacin shiga, har yanzu ba mu da alama kuma za mu shigar da shi tare da wannan buƙatar. Saboda haka, a cikin login dubawa na buƙatun a cikin shafin Kai a yankin na Gado cire alamar kan taken izini.

Shi ke nan. Yanzu za a ƙara taken izini ga duk buƙatun da ke yaran kullin aikin, sai ga kumburin shiga. Ya bayyana cewa a wannan matakin mun riga mun riga mun shirya rubutun kuma duk abin da za mu yi shi ne kaddamar da shi. Kuna iya gudanar da rubutun ta zaɓi Run a cikin mahallin mahallin aikin node.

Duban daidaiton ƙirƙirar gidan

A wannan mataki, rubutun mu zai iya shiga kuma, ta amfani da alamar izini, ƙirƙirar matsayi. Koyaya, muna buƙatar tabbatar da cewa sabon gidan da aka ƙirƙira yana da madaidaicin suna. Wato a zahiri, abin da ya rage shi ne yin abubuwa kamar haka:

  • Aika buƙatun don karɓar rubutu ta id,
  • Bincika cewa sunan da aka karɓa daga uwar garken yayi daidai da sunan da aka aiko lokacin ƙirƙirar gidan

Bari mu dubi mataki na farko. Tun da an ƙayyade ƙimar id yayin aiwatar da rubutun, kuna buƙatar ƙirƙirar canji mai ƙarfi (bari mu kira shi). postId) daga kumburi ƙirƙirar-post a matakin kumburin Project. Mun riga mun san yadda ake yin wannan, kawai koma zuwa sashin Ajiye alamar zuwa mai canzawa. Abin da ya rage shi ne ƙirƙirar buƙatun karɓar post ta amfani da wannan id. Don yin wannan, bari mu ƙirƙiri Matakin Nema samu-post tare da sigogi masu zuwa:

  • Nau'in nema: GET
  • URL: ${domain}/posts/${$dynamicVar.postId}

Don aiwatar da mataki na biyu, muna bukatar mu saba da su Aski kulli. Kumburi na Tabbatarwa kumburi ne wanda ke ba ka damar rubuta cak don takamaiman buƙatun. Kowane kumburin Ƙimar na iya ƙunsar ikirari da yawa ( cak). Kuna iya karanta ƙarin game da kowane nau'in ikirari daga namu takardun. Za mu yi amfani Compare tabbatarwa tare da mai aiki equal. Akwai hanyoyi da yawa don ƙirƙirar ikirari:

  1. Doguwa Ƙirƙiri da hannu Ƙirar Ƙididdigar Ƙididdigar Ƙididdigar Ƙirar Ƙira daga menu na mahallin Ƙirar Matakin Nema. A cikin kullin Ƙirar da aka ƙirƙira, ƙara tabbatar da sha'awa kuma cika filayen.
  2. Mai sauri. Ƙirƙiri kumburin Ƙirar Ƙira tare da tabbaci daga martanin kumburin RequestMataki ta amfani da menu na mahallin

Bari mu yi amfani da hanya ta biyu. Wannan shi ne abin da zai yi kama da lamarinmu.

TestMace. Saurin farawa

Ga wadanda ba su gane ba, ga abin da ke faruwa:

  1. Yi tambaya a cikin kumburi samu-post
  2. A cikin tab Fassara amsa, kira menu na mahallin kuma zaɓi Ƙirƙiri tabbaci -> kwatanta -> daidai

Taya murna, mun ƙirƙiri gwajin mu na farko! Sauƙaƙan, ba haka ba? Yanzu zaku iya gudanar da rubutun gaba ɗaya kuma ku ji daɗin sakamakon. Abin da ya rage shi ne a sake gyara shi kadan a fitar da shi title cikin wani m dabam. Amma za mu bar muku wannan a matsayin aikin gida)

ƙarshe

A cikin wannan jagorar, mun ƙirƙiri cikakken yanayin yanayin kuma a lokaci guda mun sake duba wasu fasalulluka na samfuranmu. Tabbas, ba mu yi amfani da duk ayyukan ba kuma a cikin labarai masu zuwa za mu ba da cikakken bayyani na iyawar TestMace. Ku ci gaba da saurare!

PS Ga waɗanda suka yi kasala don sake yin duk matakan, mun yi rikodin da kyau wurin ajiya tare da aikin daga labarin. Kuna iya buɗe shi da fayil -> Bude aikin kuma zaɓi babban fayil ɗin Project.

source: www.habr.com

Add a comment