Урок за Node.js Express FrameWork – Научете за 10 минути
В този урок ще изучаваме Express framework. Тази рамка е изградена по такъв начин, че действа като минимална и гъвкава рамка за уеб приложение Node.js, предоставяйки стабилен набор от функции за изграждане на едностранично, многостранично и хибридно уеб приложение.
Какво е Express.js?
Express.js е Node js сървърна рамка за уеб приложения, която е специално проектирана за изграждане на едностранични, многостранични и хибридни уеб приложения.
Той се превърна в стандартна сървърна рамка за node.js. Express е задната част на нещо, известно като стека MEAN.
MEAN е безплатен и с отворен код JavaСценарий Софтуерен пакет за изграждане на динамични уеб сайтове и уеб приложения, който има следните компоненти;
1) MongoDB – Стандартната NoSQL база данни
2) Express.js – Рамката за уеб приложения по подразбиране
3) Angular.js - В JavaСкрипт MVC рамка, използвана за уеб приложения
4) Node.js – Рамка, използвана за мащабируеми сървърни и мрежови приложения.
Рамката Express.js прави много лесно разработването на приложение, което може да се използва за обработка на множество типове заявки като GET, PUT и POST и DELETE заявки.
Инсталиране и използване на Express
Express се инсталира чрез Node Package Manager. Това може да стане чрез изпълнение на следния ред в командния ред
npm инсталирайте експресно
Горната команда изисква от мениджъра на пакети Node да изтегли необходимите експресни модули и да ги инсталира съответно.
Нека използваме нашата новоинсталирана Express Framework и да създадем просто приложение „Hello World“.
Нашето приложение ще създаде прост сървърен модул, който ще слуша на порт номер 3000. В нашия пример, ако се направи заявка през браузъра на този номер на порт, тогава сървърното приложение ще изпрати отговор „Hello' World“ на клиента .
var express=require('express');
var app=express();
app.get('/',function(req,res)
{
res.send('Hello World!');
});
var server=app.listen(3000,function() {});
Code Обяснение:
- В първия ред от кода използваме функцията require, за да включим „модула express“.
- Преди да можем да започнем да използваме експресния модул, трябва да направим обект от него.
- Тук създаваме функция за обратно извикване. Тази функция ще бъде извикана всеки път, когато някой разглежда корена на нашето уеб приложение, което е http://localhost:3000 . Функцията за обратно извикване ще се използва за изпращане на низа „Hello World“ към уеб страницата.
- Във функцията за обратно извикване ние изпращаме низа „Hello World“ обратно на клиента. Параметърът „res“ се използва за изпращане на съдържание обратно към уеб страницата. Този параметър „res“ е нещо, което се предоставя от модула „request“, за да позволи на човек да изпрати съдържание обратно към уеб страницата.
- След това използваме функцията слушане, за да накараме нашето сървърно приложение да слуша клиентски заявки на порт № 3000. Можете да посочите всеки наличен порт тук.
Ако командата е изпълнена успешно, следният изход ще бъде показан, когато стартирате кода си в браузъра.
Изход:
От изхода,
- Можете ясно да видите, че ако разгледаме URL на localhost на порт 3000, ще видите низа „Hello World“, показан на страницата.
- Тъй като в нашия код сме упоменали специално сървърът да слуша на порт номер 3000, можем да видим резултата, когато го преглеждаме. URL.
Какво представляват маршрутите?
Маршрутизирането определя начина, по който приложението отговаря на клиентска заявка към определена крайна точка.
Например, клиент може да направи GET, POST, PUT или DELETE http заявка за различни URL като тези, показани по-долу;
http://localhost:3000/Books http://localhost:3000/Students
В горния пример,
- Ако е направена GET заявка за първото URL, тогава отговорът в идеалния случай трябва да бъде списък с книги.
- Ако GET заявката е направена за втория URL, тогава отговорът в идеалния случай трябва да бъде списък със студенти.
- Така че, въз основа на URL към който се осъществява достъп, ще бъде извикана различна функционалност на уеб сървъра и съответно отговорът ще бъде изпратен на клиента. Това е концепцията за маршрутизиране.
Всеки маршрут може да има една или повече манипулиращи функции, които се изпълняват, когато маршрутът е съпоставен.
Общият синтаксис за маршрут е показан по-долу
app.METHOD(PATH, HANDLER)
при което,
1) приложението е екземпляр на експресния модул
2) METHOD е метод на HTTP заявка (GET, POST, PUT или DELETE)
3) PATH е път на сървъра.
4) HANDLER е функцията, която се изпълнява, когато маршрутът е съпоставен.
Нека да разгледаме пример за това как можем да внедрим маршрути в експреса. Нашият пример ще създаде 3 маршрута като
- Маршрут /Node, който ще покаже низа „Урок за възел“, ако има достъп до този маршрут
- Маршрут /Angular, който ще покаже низа „Урок за Angular“, ако има достъп до този маршрут
- Маршрут по подразбиране /, който ще показва низа „Добре дошли в Guru99 урока.
Нашият основен код ще остане същият като предишните примери. Фрагментът по-долу е добавка, за да покаже как се прилага маршрутизирането.
var express = require('express');
var app = express();
app.route('/Node').get(function(req,res)
{
res.send("Tutorial on Node");
});
app.route('/Angular').get(function(req,res)
{
res.send("Tutorial on Angular");
});
app.get('/',function(req,res){
res.send('Welcome to Guru99 Tutorials');
}));
Code Обяснение:
- Тук дефинираме маршрут, ако URL http://localhost:3000/Node е избран в браузъра. Към маршрута прикачваме функция за обратно извикване, която ще бъде извикана, когато преглеждаме Node. URLФункцията има 2 параметъра.
- Основният параметър, който ще използваме, е параметърът „res“, който може да се използва за изпращане на информация обратно към клиента.
- Параметърът 'req' съдържа информация за направената заявка. Понякога могат да бъдат изпратени допълнителни параметри като част от заявката, която се прави, и следователно параметърът „req“ може да се използва за намиране на допълнителните параметри, които се изпращат.
- Използваме функцията за изпращане, за да изпратим низа „Урок за възел“ обратно на клиента, ако е избран маршрутът на възел.
- Тук дефинираме маршрут, ако URL http://localhost:3000/Angular е избран в браузъра. Към маршрута прикачваме функция за обратно извикване, която ще бъде извикана, когато преглеждаме Angular URL.
- Използваме функцията за изпращане, за да изпратим низа „Tutorial on Angular“ обратно на клиента, ако е избран маршрутът Angular.
- Това е маршрутът по подразбиране, който се избира, когато се разглежда маршрута на приложението – http://localhost:3000Когато е избран маршрутът по подразбиране, се показва съобщението „Добре дошли в Guru„99 урока“ ще бъдат изпратени на клиента.
Ако командата е изпълнена успешно, следният изход ще бъде показан, когато стартирате кода си в браузъра.
Изход:
От изхода,
- Можете ясно да видите, че ако разгледаме URL на localhost на порт 3000, ще видите низа „Добре дошли в Guru99 урока са показани на страницата.
- Защото в нашия код споменахме, че нашата функция по подразбиране URL ще покаже това съобщение.
От изхода,
- Можете да видите, че ако URL е променен на /Node, ще бъде избран съответният маршрут на възела и ще се покаже низът „Tutorial On Node“.
От изхода,
- Можете да видите, че ако URL е променен на /Angular, ще бъде избран съответният маршрут на възела и ще се покаже низът „Tutorial On Angular“.
Примерен уеб сървър, използващ express.js
От нашия пример по-горе видяхме как можем да решим какъв изход да покажем въз основа на маршрутизирането. Този вид маршрутизиране се използва в повечето съвременни уеб приложения. Другата част от уеб сървъра е свързана с използването на шаблони в Node js.
Когато създавате бързи приложения на Node в движение, лесен и бърз начин е да използвате шаблони за приложението. Има много налични рамки на пазара за създаване на шаблони. В нашия случай ще вземем примера на нефритената рамка за шаблониране.
Jade се инсталира чрез мениджъра на Node Package. Това може да стане чрез изпълнение на следния ред в командния ред
npm инсталирайте jade
Горната команда изисква от мениджъра на пакети Node да изтегли необходимите модули jade и да ги инсталира съответно.
ЗАБЕЛЕЖКА: В последната версия на Node jade е отхвърлен. Вместо това използвайте мопс.
Нека използваме нашата новоинсталирана рамка jade и да създадем някои основни шаблони.
Стъпка 1) Първата стъпка е да създадете шаблон от нефрит. Създайте файл с име index.jade и вмъкнете кода по-долу. Уверете се, че сте създали файла в папката „views“.
- Тук уточняваме, че заглавието на страницата ще бъде променено на каквато и стойност да бъде предадена, когато този шаблон бъде извикан.
- Ние също така уточняваме, че текстът в заглавния таг ще бъде заменен с всичко, което се предава в шаблона jade.
var express=require('express');
var app=express();
app.set('view engine','jade');
app.get('/',function(req,res)
{
res.render('index',
{title:'Guru99',message:'Welcome'})
});
var server=app.listen(3000,function() {});
Code Обяснение:
- Първото нещо, което трябва да посочите в приложението, е „view engine“, който ще се използва за изобразяване на шаблоните. Тъй като ще използваме нефрит за изобразяване на нашите шаблони, уточняваме това съответно.
- Функцията за изобразяване се използва за изобразяване на уеб страница. В нашия пример изобразяваме шаблона (index.jade), който беше създаден по-рано.
- Предаваме стойностите на „Guru99“ и „Добре дошли“ съответно към параметрите „title“ и „message“. Тези стойности ще бъдат заменени от параметрите „title“ и „message“, декларирани в шаблона index.jade.
Ако командата е изпълнена успешно, следният изход ще бъде показан, когато стартирате кода си в браузъра.
Изход:
От изхода,
- Виждаме, че заглавието на страницата се задава на „Guru99“ и заглавката на страницата се задава на „Добре дошли“.
- Това се дължи на шаблона jade, който се извиква в нашето приложение node js.
Oбобщение
- Express framework е най-често използваната рамка за разработкаping Node.js приложения. Framework-ът express е изграден върху node.js framework-а и помага за бързото...tracкралско разработване на сървърно-базирани приложения.
- Маршрутите се използват за пренасочване на потребителите към различни части на уеб приложенията въз основа на направената заявка. Отговорът за всеки маршрут може да варира в зависимост от това какво трябва да се покаже на потребителя.
- Шаблоните могат да се използват за инжектиране на съдържание по ефективен начин. Jade е една от най-популярните машини за шаблони, използвани в приложенията Node.js.









