Съдържание
Node.js е алтернатива, която опростява уеб разработката, в миналото трябваше да се научат няколко езика, за да представят частта от сървърната обработка, Преден край и след това прекарайте безброй часове в настройването на сървъри.Само с един език такъв, какъвто е JavaScript и благодарение на двигателя V8 разработен от Google, имаме достъп да приложим един и същ език към сървър, Back-end Y Преден край, това ни кара да отделяме по -малко време за изучаване на различни форми на синтаксис и по този начин да се концентрираме върху това, което наистина има значение за нас, а именно да реализираме идеите си.
ИзискванияЗа да изпълним упражненията и примерите, предложени в този урок, трябва да имаме инсталация с най -новата версия на Node.js. Това е много лесно за получаване, в този случай ще използваме инсталатора Windows който получаваме директно от официалния уебсайт Node.js, той работи като всеки инсталатор и след това генерира директен достъп до конзолата Node.js където можем да изпълним необходимите скриптове.
Node.js Тя ни позволява да генерираме високоефективни уеб сървъри без нужда от големи конфигурации, освен това приложението на същия език ни позволява да избегнем разделянето на кода между приложението и услугата. За да създадем първия си сървър, трябва да изпълним следните стъпки:
1- Първо отваряме конзолата Node.js и ние се поставяме в папка, където можем да го изпълним, в тази папка ще създадем файл, наречен server.jsТова име не е необходимо, но е добра практика да извикате файла, който уеб сървърът ще създаде по този начин.
2- След като имаме файла, ще инсталираме чрез npm приложението ръководител, това ще се проверява всеки път, когато настъпи промяна в посочения файл, трябва незабавно да рестартирате сървъра, за това просто трябва да поставите следната команда в конзолата:
npm install -g супервизорТази инсталация трябва да изглежда така, когато я изпълняваме на нашата конзола:
3- След като вече сме инсталирали ръководител нека направим това слушане, така да се каже за промени в нашия файл server.js, за това трябва да поставим следната команда след инсталацията:
надзорник server.jsТъй като все още нямаме валиден код, няма да имаме никакви резултати в конзолата и ще видим поредица от съобщения, обозначаващи това, както можем да видим на следното изображение:
4- Сега, когато имаме нашите бази, трябва да създадем кода за нашия уеб сървър, това ще се поддържа в библиотеката http на Node.js и с това можем да създадем функционален сървър, използвайки метода createServer (), това просто трябва да върне малко съдържание, за да не загубим навика, който ще направим a "Здравей свят!", нека видим кода, който ще включим в нашия файл server.js:
var http = require ('http'); http.createServer (функция (заявка, отговор) {response.writeHead (200, {'Content-Type': 'text / html'}); response.end ('');}). listen (8082);Както виждаме просто с a изискват внасяме http библиотека, след това с метода createServer генерираме уеб сървър и с обекта отговор Ние създаваме заглавката на отговора и нашето съобщение, за да завършим, ние показваме на нашия сървър, че той трябва да приема входящи връзки през порта 8082, където при изпълнението на нашия пример в нашия localhost в посочения порт ще изглежда така:
5- Ако направим промени във файла server.js, благодарение на ръководител услугата ще ги вземе, без да е необходимо да се рестартира ръчно Node.js, така че само чрез опресняване на браузъра нашите промени ще бъдат отразени с малко усилия.
Както споменахме в началото, Node.js Тя ни позволява да обслужваме статично съдържание директно от нашето сървърно приложение, това се показва като предимство, когато искаме да разработваме приложения с монолитно ядро, тоест без фрагментация или пукнатини поради използването на различни технологии.
За да изпълним този урок, ще създадем поредица от файлове в папка, наречена content, файловете за създаване ще бъдат следните:
index.htmlТова ще бъде първоначалният файл и по подразбиране ще съдържа основна структура HTML.
style.cssТова е нашият файл със стилови таблици, ние отиваме с този файл, за да променим външния вид на нашето приложение.
script.jsТук можем да видим как можем да използваме обичайните си скриптове в JavaScript въпреки пускането на нашето приложение Node.js.
Сега, след като сме дефинирали нашите файлове, нека видим съдържанието на всеки от тях, за файла index.html ще включим следното:
Нашият първи Node.js сървър Hello WorldКакто виждаме, това е проста страница с основна структура, където наричаме външни файлове styles.css Y script.js, и в тялото ние поставяме просто съобщение. След това в нашия файл styles.css което ще ни помогне да променим външния вид на нашата страница, трябва да поставим следните редове код:
#hello {font-size: 5em; background: grey; color: green; padding: 0.5em}Накрая във файла script.js Ще поставим код, който ще изведе съобщение, когато страницата се зареди напълно, този код е следният:
window.onload = function () {alert ('Eureka Works!'); };За да имаме всичко на едно място и да поддържаме ред в развитието си, ще хостваме тези файлове в папка, наречена съдържание.
Какво ни липсва?След като това е направено, трябва само да изградим сървъра, първото нещо, което трябва да направим, е да включим подходящите библиотеки, в този случай ще имаме нужда от тази, която вече познаваме, която е http, допълнително ще имаме нужда път която трябва да изгради маршрути и накрая fs което е за файловата услуга.
Отиваме в нашия архив server.js което трябва да е в основата на нашия проект и сега в нашия блок от createServer () ще посочим, че URL адрес ток като база и с обект на fs Ще проверим дали файловете съществуват, в случай че не съществуват, ще хвърлим a Грешка 404 файлът не е намерен. Нека да видим кода на функционалността, описана по -горе:
var http = require ('http'); var path = require ('path'); var fs = require ('fs'); http.createServer (функция (заявка, отговор) {var search_file = path.basename (decodeURI (request.url)) || 'index.html'; var f = 'content /' + файл за търсене; fs.exists (f, функция (съществува) {console.log (съществува? search_file + "ако съществува": search_file + "не съществува");});}). listen (8082);Проблемът, който имаме, е, че това все още не ни помага да обслужваме файловете, затова трябва да използваме метод на fs което ни позволява да четем файловете и с това можем да го изпратим до браузъра, както можем да видим в следния код:
var http = require ('http'); var path = require ('path'); var fs = require ('fs'); http.createServer (функция (заявка, отговор) {var search_file = path.basename (decodeURI (request.url)) || 'index.html'; var f = 'content /' + search_file; var mimeTypes = {'.js ':' text / javascript ',' .html ':' text / html ',' .css ':' text / css '}; fs.exists (f, функция (съществува) {if (съществува) {fs.readFile (f, функция (грешка, данни) {if (грешка) {response.writeHead (500); response.end ('Грешка на сървъра'); return;} var headers = {'Content-type': mimeTypes [път .extname (файл за търсене)]};; );Както виждаме сега с метода readFile () първо можем да потвърдим, ако няма грешка в сървъра във вашия обратно повикване и второ можем да получим типа файл, който искаме да обслужваме от списъка с типове, с това можем да генерираме заглавката HTTP необходимо, за да не се налага браузърът да тълкува данните по свой собствен начин.
Ако никое от действията не връща резултат, трябва да изпратим на браузъра отговор 404, по този начин ще прекъснем заявката и ще посочим на потребителя, че това, което търсят, не е в посочения път. Както направихме в предишния пример, ще разкажем Node.js че пристанището, където трябва да приема заявките, трябва да бъде 8082, което е пристанище, което обикновено е безплатно и по този начин няма конфликти с други услуги. Накрая пишем отговора на файла и изпълняваме нашия ръководител отново в случай, че сме спрели услугата, както можем да видим на следното изображение:
След като това стане, отиваме в нашия браузър и изпълняваме на порт 8082 и можем да видим изхода на нашата програма, който трябва да изглежда като следното изображение:
Увеличете
Това ни показва цялата мощ и универсалност на Node.js, с което успяхме да проверим, че няма нужда да използваме език, различен от този на JavaScript за развитие.ВажноВажно е да се направят някои изследвания npm Какво е той мениджър на пакети възел, тъй като с този инструмент можем да получим много пакети, които могат да ни обслужват, сред тях са някои рамки това ще ни позволи да опростим целия код, който сме видели тук, в допълнение към други компоненти, разработени от общността, за да спестим работа за разработчика на Node.js.
С това завършихме урока, създадохме сървър и също така се научихме как да обслужваме статични файлове. Ако бяхме използвали традиционна технология като PHP За да постигнем този резултат, първо ще имаме нужда от традиционен сървър като Apache или nginx, където също трябва да ги конфигурираме, отпечатването на кода би се нуждаело от различен език, прехвърляне към JavaScript само от страна на клиента и по този начин губи големите му възможности.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка