NodeJS е среда за изпълнение на JavaScript с отворен код, създадена на V8 JS двигателя на Chrome. Той използва неблокиращ лек, управляван от събития входно-изходен модел, който прави възможно асинхронното програмиране. Може да се нарече среда без сървър, която изпълнява базирани на JS скриптове за създаване на мащабируеми приложения.
NodeJS е известен предимно с изграждането на мащабируеми и бързи мрежови приложения. Разработчиците го познават като език за програмиране, използван за уебсайтове, сървъри, управлявани от събития, и активни бекенд API. Следователно, NodeJS е наречен режим „JavaScript навсякъде“ поради способността му да интегрира разработка на приложения и уеб около един език за програмиране.
MongoDB е широко известен със своята лекота на използване, мащабируемост, функции за надеждност, които им дават предимство при различни полета (известни като колони в RDBMS).
Ще ни трябват следните компоненти, за да инсталираме и свържем NodeJS с MongoDB за ръководството.
- Ubuntu
- MongoDB
- NodeJS
- Драйвер за MongoDB NodeJS
Забележка: MongoDB поддържа всички стабилни версии на NodeJS. Затова ще използваме най-новата стабилна версия за това ръководство.
Инсталиране на NodeJS на Ubuntu
NodeJS може лесно да бъде инсталиран на Ubuntu чрез добавяне на PPA, предоставен от официалния уебсайт на NodeJS. Както беше посочено по-рано, приложението NodeJS е достъпно в няколко формата, като LTS и текущата версия. Изборът на разработчика е да избере коя версия на NodeJS да инсталира. Въпреки това, в името на това ръководство за урок, ние ще използваме стабилната (LTS) версия. Добавете PPA към нашата Ubuntu система, като използвате командните редове по-долу:
sudo apt-get install curl python-software-propertiescurl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash –
Като алтернатива можете да използвате командата apt-get и да видите дали работи за вас. За да направите това, изпълнете командите по-долу:
sudo apt updatesudo apt install nodejs
Изход:
Забележка: Командата apt-get ще инсталира NPM заедно с NodeJS. Това е мениджърът на пакети по подразбиране за NodeJS. NPM е съкращение за Node Package Manager. Той съдържа npm регистър, онлайн БД за публични и платени пакети и клиент на командния ред, наричан npm.
Освен това, ако нямате инсталирано curl приложението на вашата Ubuntu OS, изпълнете командния ред по-долу:
sudo apt-get install curl
Изход:
След като успешно добавите NodeJS PPA към вашата система, продължете и изпълнете командите по-долу, за да инсталирате NodeJS на Ubuntu.
sudo apt-get install nodejs
Бъдете търпеливи, докато командата по-горе се изпълни напълно, след което проверете дали командата е инсталирана, като изпълните командата по-долу:
възел -v
Изход:
Проверете версията на npm, като изпълните командата по-долу:
npm -v
Изход:
Ако сте намерили изход, подобен на моя, това означава, че npm не е инсталиран на вашата Ubuntu OS. Следователно, за да го инсталирате, изпълнете командата по-долу:
sudo apt install npm
Изход:
След като инсталирате npm, проверете неговата версия, като стартирате командния ред по-долу:
npm -v
Изход:
Нека тестваме приложението NodeJS, което наскоро инсталирахме, като създадем тестов текст „Hello Foss“. Създайте файл и го наречете „fosslinux.js“ и въведете кода по-долу в него:Можете да използвате любимия си текстов редактор. Например, използвам Sublime текстов редактор за това ръководство. За да инсталирате сублимен текстов редактор в Ubuntu, изпълнете командите по-долу:
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -sudo apt-get install apt-transport-https echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.listsudo apt-get updatesudo apt-get install sublime-text
Изход:
Инсталирайте Sublime Text:
var http =require('http');http.createServer(function (req, res) {res.writeHead(200, {'Content-Type':'text/plain'});res.end(' Здравейте, Foss\n');}).listen(4000, “127.0.0.1”);console.log('Сървърът работи на ')
Изход:
Кодът по-горе ще създаде текст Hello Foss. Това ни показва, че NodeJS е инсталиран успешно на нашата Ubuntu OS. Сега нека научим как да инсталираме MongoDB на Ubuntu.
Инсталиране на MongoDB на Ubuntu
MongoDB е NoSQL DB, която предлага висока наличност, автоматично мащабиране и мащабируемост на корпоративни бази данни от високо ниво. За да свържем NodeJS с MongoDB, трябва да инсталираме MongoDB на нашата Ubuntu OS. Вижте нашето подробно ръководство за инсталиране и конфигуриране на MongoDB в Ubuntu.
Първо, за да осигурим последователност и автентичност на пакета, който тепърва предстои да инсталираме на нашата Ubuntu OS, трябва да използваме GPG ключовете.
Изпълнете командата по-долу, за да импортирате GPG ключовете на вашия сървър:
sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv 68818C72E52529D4
Изход:
Сега създайте списък с източници за пакета MongoDB, като използвате кода по-долу:
sudo echo “deb http://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
Изход:
Актуализирайте репозиториите с помощта на командата apt-get, както е показано по-долу:
sudo apt-get update
Изход:
Инсталирайте MongoDB на вашата Ubuntu OS, като изпълните тази команда:
sudo apt-get install -y mongodb-org
Изход:
Стартирайте MongoDB и го активирайте като услуга, така че всеки път, когато стартирате вашата Ubuntu OS, сървърът MongoDB се отваря:
sudo systemctl стартиране mongodsudo systemctl активиране на mongodsudo systemctl стоп mongod
Изход:
Стартирайте, активирайте и спрете MongoDBЗабележка: Ако намерите изход, подобен на показания тук:
Това е индикатор, че MongoDB е маскиран и трябва да го демаскирате, като изпълните командния ред по-долу:
sudo systemctl демаскира mongod
Изход:
След демаскиране на MongoDB, можете да стартирате отново командата start MongoDB, както е илюстрирано тук:
sudo service mongod start
Изход:
Проверете дали приложението MongoDB е инсталирано успешно във вашата ОС:
mongod --версия
Изход:
Забележка: Ако не можете да следвате ръководствата, предоставени в това ръководство за статия, разгледайте свързаната статия, тъй като тя съдържа задълбочени ръководства и прозрения по споменатата тема. След като инсталирате MongoDB на вашия компютър, продължете да четете това ръководство за статия, за да научите как да свържете NodeJS с MongoDB.
Свързване на NodeJS с MongoDB
За да свържем MongoDB с NodeJS, ще ни е необходим драйвер MongoDB за NodeJS. Инсталирайте официалния драйвер за npm, като използвате синтаксиса на кода по-долу. Уверете се, че изпълнявате тази команда във вашето приложение:
npm install -P mongodb
Изход:
След като драйверът е успешно инсталиран в директорията на приложението ви, ние сме готови да свържем MongoDB с NodeJS. За да започнем, трябва да създадем файл, който съдържа логиката на връзката. Ще назовем файла „foss.js“ и ще добавим следния код:
var MongoClient =require('mongodb').MongoClient;var database =undefined;var dbUrl ='mongodb://127.0.0.1:27017/security';MongoClient.connect(dbUrl, function(err, db) { if (err) { throw err; } else { база данни =db; console.log('MongoDB връзката успешна');}});
Изход:
„свързване” метод разкрива обекта MongoClient, който връща обекта на базата данни в обратно извикване. Синтаксисът на кода е както е показано по-долу:
свързване (URL, опции, обратно извикване)
Забележка: Първият аргумент съдържа URL низ със синтаксиса по-долу:
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[база данни][?опции]]предварително>Вторият аргумент включва обектен литерал който определя настройки като poolSize и автоматично повторно свързване .
Трети аргумент съдържа функция за обратно повикване който осигурява грешки при свързване и обекти на база данни в случай на успешни отговори.
Въведете и изпълнете командата по-долу в директорията на приложението си:
възел db_connect.jsКонзолата ще прилича на тази, показана в изхода, когато връзката е успешна:
Връзката с MongoDB е успешнаСлед като получите този изход, той показва, че базата данни за сигурност е била успешно свързана. Вмъкнете данните по-долу в нова колекция, известна като потребители. Променете db_connect.js, както е показано тук:
var MongoClient =require('mongodb').MongoClient;var database =undefined;var dbUrl ='mongodb://127.0.0.1:27017/security';MongoClient.connect(dbUrl, function(err, db) { if (err) { throw err; } else { база данни =db; console.log('MongoDB връзката успешна'); var testUser ={ име:'Suraj Poddar' }; var users =db.collection('users'); \ users.insert(testUser, function(err, docs) { if (err) { throw err; } else { console.log(docs); } }); }});Ако NodeJS с MongoDB е свързан, изходът ще бъде подобен на показания по-долу:
Връзката с MongoDB е успешна{ резултат:{ ok:1, n:1 }, ops:[ { name:'Suraj Poddar', _id:59ad4719eb794f64c84e7ba6 } ], insertedCount:1, insertedIds:[ 59ad784]pres:[ 59ad767]Резултатът по-горе показва, че сме свързали NodeJS с MongoDB успешно.