Почетак коришћења Екпресс.јс -а

ЈаваСцрипт преузима водећу улогу у развоју веба, његово богатство рутина обраде у реалном времену и пратећа свестраност учинили су га једним од најбрже растућих језика у посљедњих 5 година.

Од објављивања Ноде.јс Много је речено о креирању апликација које користе један језик, а данас је то могуће, користећи фронт-енд оквире као што су АнгуларЈС или Бацкбоне.јс, такође користећи базе података као што су МонгоДБ или ЦоуцхДБ и на крају на страни сервера радећи са моћнима Ноде.јс.

Али за рад са великим апликацијама од нуле Ноде.јс морамо да урадимо много понављајућих и сложених ствари, ту долази Екпресс.јс, који није ништа друго до МВЦ оквир који нам помаже да поједноставимо разраду наше логике Бацк-енд, и ослањајући се на Ноде.јс резултира великим апликацијама направљеним у потпуности ЈаваСцрипт.

ЗахтевиНаши захтеви су прилично основни, само их морамо имати Ноде.јс инсталиран и покренут на нашем систему, ако имамо најновију верзију, морамо се уверити да и ми имамо нпм који је алат који ће нам омогућити инсталирање различитих пакета који су нам потребни, као у случају оквира, Екпресс.јс.

1. Екпресс.јс


Овај оквир је дизајниран тако да има неке функције које су инспирисане другим оквирима, попут Раилс или Синатра, то значи да када га искусни програмер ухвати у руке, може се осећати угодно у руковању концептима које већ познаје, али уз моћ Ноде.јс и само користећи ЈаваСцрипт брзина развоја се вишеструко повећава.

Пре него што се детаљније позабавимо темом, погледајмо прво најважније карактеристике Екпресс.јс:

МинимумИдеја иза оквира није да се упуштамо у друга питања која не посредују између наше апликације и сервера, јер нам то не компликује живот са хиљадама компоненти, већ нам пружа само најнужније ствари.

ФлексибиланЗбог своје минималне карактеристике, добијате велику флексибилност јер програмер може изабрати начин на који жели да ради и дозвољено му је да имплементира сопствена решења или да угради готова решења, нпр. ОРМ за различите врсте Базе података.

Направљено за апликацијеСврха Екпресс.јс је да олакша изградњу веб апликација, било да се ради о страницама, услугама РЕСТ, или чак хибридне апликације.

2. Скеле


Ово је термин из којег смо можда видели Раилс и другим оквирима, широко се користи у Екпресс.јс и то није ништа друго до оквир који генерише структуру и основни код, који се такође назива котловница што нам помаже да покренемо апликацију.

На овај начин можемо створити оквир пројекта из наредбе и на тај начин заборавити да морамо запамтити сваку од потребних фасцикли и основних датотека. Очигледно, како је ово нешто тако опћенито, много пута на крају препишемо многе ствари или створимо властите мапе, али имати полазну тачку је савршено.

3. Инсталирајте Екпресс.јс


Инсталација оквира је прилично једноставна, захваљујући потребним корацима нпм, за инсталацију Екпресс.јс морамо само да одемо на командну конзолу где можемо да извршимо нпм и поставите следећу команду:
 нпм инсталл екпресс --саве
Ово ће учинити да наш систем преузме сав потребан код да би могао да генерише наше пројекте, као и да користи различите алате које поставља Екпресс.јс На располагању, у конзоли ћемо видети нешто попут следећег ако је инсталација била успешна.

Можемо приметити да је инсталирано неколико повезаних пакета и да је верзија Екпресс.јс у време писања овог водича је 4.11.2, овдје је важно истаћи да је од верзије 4 надаље дошло до велике промјене па је важно ако тражимо информације како бисмо били сигурни да је то за верзију 4 па надаље.

Наша прва апликацијаЗа нашу прву апликацију направићемо веб страницу са два одељка, пошто тек упознајемо алат, сваки одељак ће имати мали текст, важно је да ћемо морати да направимо мали сервер и да се бавимо захтевима наших корисника.

4. Сервер


Прво што морамо да урадимо је да направимо фасциклу у коју ће се налазити наша апликација, а унутар ње креирати датотеку под називом индек.јс, ово име се обично поставља као конвенција, међутим може бити било које друго име, у ствари ћемо променити ствари и поставити назив наше датотеке хеллоекпресс.јс.

Када добијемо датотеку, почећемо укључивањем изразити користећи инструкцију захтевају, са овим ћемо имати на располагању све алате оквира, а затим ћемо користити методе комплет() И усе (), где ћемо са првим успоставити порт преко којег би наш сервер требало да чека везе, а са другим ћемо утврдити шта би требало да се догоди када добијемо грешку 404 или грешку 500.

На крају са методом слушај () учинићемо да наша апликација стоји када покренемо датотеку. Погледајмо код испод:

 вар екпресс = рекуире ('екпресс'); вар апп = екпресс (); апп.сет ('порт', процесс.енв.ПОРТ || 3001); апп.усе (фунцтион (рек, рес) {рес.типе ( 'тект / плаин'); рес.статус (404); рес.сенд ('404 - Нот Фоунд');}); апп.усе (фунцтион (ерр, рек, рес, нект) {цонсоле.еррор (грешка. стацк); рес.типе ('тект / плаин'); рес.статус (500); рес.сенд ('500 - Нешто није у реду!');}); апп.листен (апп.гет ('порт'), фунцтион () {цонсоле.лог ('Екпресс је покренут на хттп: // лоцалхост:' + апп.гет ('порт') + '; притисните Цтрл-Ц да затворите сервер.');});
Сада морамо само да напишемо следећу команду у конзолу:
 чвор хеллоекпресс.јс
Са овим ће се наш сервер подићи. Проблем је у томе што нећемо ништа видјети, то је зато што нисмо утврдили руте апликације, али ако видимо сљедећи екран, видимо да ради јер је наша порука коју смо поставили за 404 испала.

ЕНЛАРГЕ

5. Укључујући и руте


Да бисмо добили резултат изван странице 404 коју генеришемо, морамо укључити руте, што није ништа друго него рећи нашој апликацији да када корисник затражи руту методом ХТТП конкретно, резултат који дефинишемо се враћа, дакле рута добити није исто што и рута пошта и стога оба, упркос томе што су под истим усмерењем, могу дати различите резултате.

Па хајде да направимо пар рута добити, овај код мора бити постављен непосредно испред кода који генерише 404, па ћемо изменити нашу датотеку хеллоекпресс.јс а сада би требало да буде овако:

 вар екпресс = рекуире ('екпресс'); вар апп = екпресс (); апп.сет ('порт', процесс.енв.ПОРТ || 3001); апп.гет ('/', функција (рек, рес) { рес.типе ('тект / плаин'); рес.сенд ('Здраво, добродошли у моју прву апликацију');}); апп.гет (' / отхер патх', фунцтион (рек, рес) {рес.типе ( 'тект / плаин'); рес.сенд ('Ово је још један пут наше апликације');}); апп.усе (фунцтион (рек, рес) {рес.типе ('тект / плаин'); рес.статус (404); рес.сенд ('404 - Није пронађено');}); апп.усе (фунцтион (ерр, рек, рес, нект) {цонсоле.еррор (ерр.стацк); рес.типе ('тект / плаин '); рес.статус (500); рес.сенд (' 500 - Нешто није у реду! ');}); апп.листен (апп.гет (' порт '), фунцтион () {цонсоле.лог (' Екпресс започето на хттп: // лоцалхост: ' + апп.гет (' порт ') +'; притисните Цтрл-Ц да бисте искључили сервер. ');});
Како можемо приметити методу добити прима руту, а затим анонимну функцију, у оквиру ове шаљемо врсту одговора у овом случају текст / обичан и онда шаљемо садржај, ако покренемо наш пример у прегледачу, коначно ћемо добити нешто попут следећег:

ЕНЛАРГЕ

Руте пошта Они раде на сличан начин, само тада морамо укључити руковање параметрима који се могу укључити, али не бисмо требали бринути превише о томе у овом тренутку. Тада смо могли да проверимо како смо утицали на резултат онога што корисник може видети директно.

ВажноНешто што је важно напоменути је да сваки пут када нешто променимо у коду морамо да затворимо апликацију и поново је покренемо да би промене ступиле на снагу. Овај почетак може изгледати врло једноставно, а јесте, идеја је да се можемо навикнути на рад на начин да разумемо сервер и како он функционише, јер на овај начин можемо креирати апликације које желимо са кодом који заиста желимо и то је магија Екпресс.јс.

Одавде можемо почети експериментисати са врстама одговора и садржајем који желимо да послужимо, али права снага долази када почнемо да имплементирамо машину за предлошке, међутим то је већ мало напреднија тема у овом водичу.

Овим смо завршили овај водич, направили смо малу апликацију са којом ћемо направити прве кораке Екпресс.јс, ако смо знали Ноде.јс одмах видимо да су ствари мало директније и једноставније. Али стварну снагу ћемо видети када почнемо да имплементирамо друге алате, попут шаблона или модела.

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave