de Arun Mathew Kurian

Cum să construiți o aplicație de chat în timp real în Node.js folosind Express, Mongoose și Socket.io

Cum sa construiti o aplicatie de chat in timp real

În acest tutorial, vom folosi platforma Node.js pentru a construi un aplicație de chat în timp real care trimite și afișează mesaje către un destinatar instantaneu, fără nicio reîmprospătare a paginii. Pentru a realiza acest lucru vom folosi cadrul JavaScript Express.js și bibliotecile Mongoose și Socket.io.

Înainte de a începe, să aruncăm o privire rapidă asupra elementelor de bază ale Node.js

Node.js

Node.js este un mediu open-source, multi-platform JavaScript, care execută codul JavaScript în afara browserului. Cel mai important avantaj al utilizării Node este că putem folosi JavaScript atât ca limbă front-end, cât și back-end.

După cum știm, JavaScript a fost utilizat în principal pentru scriptarea partea clientului, în care scripturile au fost încorporate în HTML-ul unei pagini web și rulează partea clientului de către un motor JavaScript în browserul web al utilizatorului.

Node.js permite dezvoltatorilor să utilizeze JavaScript pentru a scrie instrumente de linie de comandă și pentru scripturi de pe server – rularea de scripturi de pe server pentru a produce conținut dinamic al paginii web înainte ca pagina să fie trimisă în browserul web al utilizatorului.

Pentru a instala nodul:

https://nodejs.org/en/download/

Chiar dacă nodul este cu un singur fir, este încă mai rapid să folosiți funcții asincrone. De exemplu, Node poate procesa alte lucruri în timp ce un fișier este citit de pe disc sau în așteptarea finalizării unei cereri HTTP. Comportamentul asincron poate fi implementat folosind apeluri de apel. De asemenea, JavaScript funcționează bine cu bazele de date JSON și No-SQL.

Module NPM

Nodejs permite ca modulele bibliotecilor să fie incluse în aplicație. Aceste module pot fi definite de utilizator sau module terțe.

Modulele terță parte pot fi instalate folosind următoarea comandă:

npm install module_name

iar modulele instalate pot fi utilizate folosind require () funcţie:

var module = require(‘module_name’)

În aplicațiile Node vom folosi un fișier package.json pentru a menține versiunile modulului. Acest fișier poate fi creat prin această comandă:

npm init

iar pachetele trebuie instalate după cum urmează:

npm install -s module_name

Există multe cadre care pot fi adăugate ca module la aplicația noastră Node. Acestea vor fi explicate în continuare, după cum este necesar.

Aplicație simplă de chat

Aplicația trebuie să permită mai multor utilizatori să discute împreună. Mesajele trebuie actualizate fără a actualiza pagina. Pentru simplitate, vom evita partea de autentificare.

Putem începe prin crearea unui nou director de proiect și mutarea în acesta. Apoi ne putem iniția proiectul prin următoarea comandă:

npm init

Acest lucru ne va determina să introducem detalii despre proiectul nostru.

După aceasta a pachet.json fișierul va fi creat:

{
 “name”: “test”,
 “version”: “1.0.0”,
 “description”: “”,
 “main”: “index.js”,
 “scripts”: {
 “test”: “echo ”Error: no test specified” && exit 1"
 },
 “author”: “”,
 “license”: “ISC”
}

Directorul nostru de aplicații este acum setat.

Primul lucru pe care trebuie să îl creăm este un server. Pentru a crea acest lucru, vom folosi un cadru numit Expres.

Express.js

Express.js, sau pur și simplu Express, este un cadru de aplicații web pentru Node.js. Expres oferă un set robust de caracteristici pentru aplicații web și mobile. Express oferă un strat subțire de caracteristici fundamentale ale aplicațiilor web, fără a ascunde caracteristicile Node.js.

Vom instala Express.js folosind următoarea comandă:

npm install -s express

În interiorul fișierului package.json se va adăuga o nouă linie:

dependencies”: {
 “express”: “⁴.16.3”
 }

Apoi vom crea un server.js fişier.

În acest fișier trebuie să solicităm Express și să creăm o referință la o variabilă dintr-o instanță a Express. Conținutul static precum HTML, CSS sau JavaScript poate fi difuzat folosind express.js:

var express = require(‘express’);

var app = express();

și putem începe să ascultăm un port folosind codul:

var server = app.listen(3000, () => {
 console.log(‘server is running on port’, server.address().port);
});

Acum trebuie să creăm un fișier HTML index.html care afișează interfața noastră de utilizare. Am adăugat bootstrap și cdn JQuery.

//index.html

<!DOCTYPE html>
<html>
<head>
 <! — include bootstap and jquery cdn →
</head>
<body>
<div class=”container”>
 <br>
 <div class=”jumbotron”>
 <h1 class=”display-4">Send Message</h1>
 <br>
 <input id = “name” class=”form-control” placeholder=”Name”>
 <br>
 <textarea id = “message” class=”form-control” placeholder=”Your Message Here”>
</textarea>
 <br>
 <button id=”send” class=”btn btn-success”>Send</button>
 </div>
 <div id=”messages”>
 
</div>
</div>
<script>

</script>
</body>
</html>

Vă rugăm să rețineți că golul