So schreiben Sie Ihre erste Node.js-App unter Linux
JavaScript ist die aktuell angesagte Programmiersprache da draußen; Es ist ohne Zweifel die beliebteste Technologie, die von Full-Stack-Entwicklern verwendet wird.
JavaScript-Webframeworks sind zu einer magischen Lösung für eine schnellere Webentwicklung mit absoluter Effizienz, Sicherheit und minimierten Kosten geworden. Ich bin mir ziemlich sicher, dass Sie davon gehört haben Knoten JavaScript (allgemein als bezeichnet Node.js oder einfach Knoten) gibt es im Internet ein Summen darüber.
In diesem Artikel werde ich Ihnen zeigen, wie Sie mit der Entwicklung von Anwendungen in beginnen JavaScript mit Node.js unter Linux. Aber zuerst erhalten wir eine kurze Einführung in Node.js.
Was ist Node.js?
Node.js ist eine Open Source, leichte und effiziente JavaScript-Laufzeit, die auf der V8-JavaScript-Engine von Chrome basiert. Es wurde ohne Threads (Single-Threaded) entwickelt und hat eine ähnliche Implementierung wie Twisted, eine Netzwerk-Engine, die mit Python oder Event Machine, einer Ereignisverarbeitungsbibliothek für Ruby-Programme, erstellt wurde.
Das Herz von Node.js basiert auf ereignisgesteuerter Programmierung; Ein Programmierer sollte daher verstehen, welche Ereignisse verfügbar sind und wie er darauf reagieren soll.
Paketverwaltung unter Node.js.
Node.js verwendet die JavaScript Paketmanager und Ökosystem genannt “Asl”, die eine immense Sammlung kostenloser Open-Source-Bibliotheken enthält. Es unterstützt die modulare Softwareentwicklung. Sie können damit Knotenpakete installieren, Ihren Code freigeben, verteilen und Paketabhängigkeiten verwalten.
Warum ist Node.js wichtig?
Node.js ist eine mächtige und daher aus folgenden Gründen wichtig:
- Es verwendet ein asynchrones ereignisgesteuertes, nicht blockierendes E / A-Ausführungsmodell, das den Durchsatz einer Anwendung verbessert und die Skalierbarkeit für reale Webanwendungen unterstützt.
- Es ist Single-Threaded, sodass jeweils nur 1 CPU verwendet werden kann.
- Eine node.js-Webanwendung ist beispielsweise ein vollständiger Webserver Nginx oder Apache.
- Es unterstützt Threads über die child_process.fork () API zum Laichen des untergeordneten Prozesses und bietet auch ein Cluster-Modul.
Mit dieser kurzen Einführung müssen Sie bereit sein, Ihre erste zu schreiben JavaScript Programm. Als erstes müssen Sie jedoch installieren Node.js und NPM Pakete auf Ihrem Linux-System mithilfe der folgenden Anleitung.
- Installieren Sie die neuesten Nodejs und NPM-Versionen in Linux-Systemen
So erstellen Sie Ihre erste Node.js-App unter Linux
Sobald Sie installiert haben Node.jsDu bist bereit zu gehen. Erstellen Sie zunächst ein Verzeichnis, in dem Ihre Anwendungsdateien gespeichert werden.
$ sudo mkdir -p /var/www/myapp
Wechseln Sie dann in dieses Verzeichnis und erstellen Sie eine package.json
Datei für Ihre Anwendung. Diese Datei dient als kleine Dokumentation für Ihr Projekt: Name des Projekts, Autor, Liste der Pakete, von denen es abhängt und so weiter.
$ cd /var/www/myapp $ npm init
Dies wird Ihnen eine Reihe von Fragen stellen, einfach wie unten beschrieben beantworten und drücken [Enter]. Beachten Sie, dass die wichtigsten Dinge in der package.json
sind die Namens- und Versionsfelder, wie unten erläutert.
- Paketnamen – Ihr App-Name ist standardmäßig der Verzeichnisname.
- Ausführung – Version Ihrer App.
- Beschreibung – Schreiben Sie eine kurze Beschreibung für Ihre App.
- Einstiegspunkt – Legt die auszuführende Standardpaketdatei fest.
- Testbefehl – wird zum Erstellen eines Testskripts verwendet (standardmäßig ein leeres Skript).
- Git-Repository – Definieren Sie ein Git-Repository (falls vorhanden).
- Schlüsselwörter – Legen Sie Schlüsselwörter fest, die für andere Benutzer wichtig sind, um Ihr Paket auf npm zu identifizieren.
- Autor – Gibt den Autorennamen an, geben Sie hier Ihren Namen ein.
- Lizenz – Geben Sie eine Lizenz für Ihre App / Ihr Paket an.
Als nächstes erstellen Sie eine server.js
Datei.
$ sudo vi server.js
Kopieren Sie den folgenden Code und fügen Sie ihn ein.
var http = require('http'); http.createServer(function(req,res){ res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello World!'); }).listen(8080); console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');
Starten Sie als Nächstes Ihre Anwendung mit dem folgenden Befehl.
$ node server.js OR $ npm start
Öffnen Sie als Nächstes einen Webbrowser und greifen Sie auf Ihre Web-App zu, die nur den String druckt “Hallo Welt!”unter Verwendung der Adresse:
http://localhost:3333
In unserem obigen Code ist das Hauptereignis, das verarbeitet wird, ein HTTP Anfrage über die HTTP-Modul.
Das Nodejs HTTP-Modul
Im Node.jsModule sind eher wie JavaScript Bibliotheken enthalten Funktionen, die Sie in Ihrer App wiederverwenden können. Sie können eingebaute Module oder Module von 30 Teilnehmern verwenden oder eigene Module erstellen.
Verwenden Sie zum Aufrufen von Modulen in Ihrer App die erforderliche Funktion wie gezeigt.
var http = require('http');
Sobald das http-Modul enthalten ist, wird ein Server erstellt, der einen bestimmten Port überwacht (3333 in diesem Beispiel). Das http.creatServer Die Methode erstellt den tatsächlichen http-Server, der eine Funktion (die aufgerufen wird, wenn ein Client versucht, auf die App zuzugreifen) als Argument akzeptiert.
http.createServer(function(req,res){ res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello World!'); }).listen(8080);
Die Funktion in http.createServer hat zwei Argumente: req (Anfrage) und res (Antwort). Das req Argument ist die Anfrage eines Benutzers oder Clients und der res Argument sendet eine Antwort an den Client.
res.writeHead(200, { 'Content-Type': 'text/plain' }); #This is a response HTTP header res.end('Hello World!');
Der letzte Teil des Codes sendet die Ausgabe an die Konsole, sobald der Server gestartet ist.
console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');
Routing in Node.js.
In diesem Abschnitt werde ich eines der wichtigsten Konzepte unter erläutern Node.js Programmierung bekannt als Routing (vergleichbar mit Routing unter Computernetzwerken: Prozess zum Finden eines Pfads für den Verkehr in einem Netzwerk).
Hier, Routing ist eine Technik zur Bearbeitung der Anfrage eines Kunden; Bereitstellung des vom Client angeforderten Inhalts, wie in der URL angegeben. Eine URL besteht aus einem Pfad und einer Abfragezeichenfolge.
Um die Anforderungsabfragezeichenfolge eines Clients anzuzeigen, können wir die folgenden Zeilen in unsere Antwort einfügen.
res.write(req.url); res.end()
Unten ist der neue Code.
var http = require('http'); http.createServer(function(req,res){ res.writeHead(200, { 'Content-Type': 'text/plain' }); res.write(req.url); res.end(); }).listen(8080); console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');
Speichern Sie die Datei und starten Sie Ihre Anwendung erneut mit dem folgenden Befehl.
$ node server.js OR $ npm start
Geben Sie in einem Webbrowser verschiedene URLs ein, die wie unten gezeigt angezeigt werden.
http://localhost:3333 http://localhost:3333/about http://localhost:3333/tecmint/authors
Jetzt erstellen wir eine wirklich kleine Website für Tecmint mit einer Homepage, über und Autoren Seiten. Wir werden einige Informationen auf diesen Seiten anzeigen.
Öffne das server.js
Datei zum Bearbeiten und fügen Sie den folgenden Code hinzu.
//include http module var http = require('http'); http.createServer(function(req,res){ //store URL in variable q_string var q_string = req.url; switch(q_string) { case '/': res.writeHead(200, { 'Content-Type': 'text/plain' }); res.write('Welcome To Tecmint.com!') res.end(); break; case '/about': res.writeHead(200, { 'Content-Type': 'text/plain' }); res.write('About Us'); res.write('nn'); res.write('Tecmint.com - Best Linux HowTos on the Web.'); res.write('n'); res.end('Find out more: https://www.tecmint.com/who-we-are/'); break; case '/tecmint/authors': res.writeHead(200, { 'Content-Type': 'text/plain' }); res.write('Tecmint Authors'); res.write('nn'); res.end('Find all our authors here: https://www.tecmint.com/who-we-are/'); break; default: res.writeHead(404, { 'Content-Type': 'text/plain' }); res.end('Not Found'); break; } }).listen(3333); console.log('Server started on localhost:3333; press Ctrl-C to terminate....');
Im obigen Code haben wir gesehen, wie man Kommentare schreibt Node.js Verwendung der //
Zeichen und führte auch Switch- und Case-Anweisungen zum Weiterleiten von Client-Anforderungen ein.
Speichern Sie die Datei, starten Sie den Server und versuchen Sie, auf die verschiedenen Seiten zuzugreifen.
Das war es fürs Erste! Weitere Informationen finden Sie unter Nodejs und NPM Websites.
Lesen Sie auch: So installieren Sie PM2, um Node.js Apps unter Linux auszuführen
Fazit
Node.js steigt heute auf neue Höchststände, es hat die Full-Stack-Entwicklung viel einfacher gemacht als zuvor. Die einzigartige Philosophie der ereignisgesteuerten Programmierung ermöglicht es Ihnen, blitzschnelle, effiziente und skalierbare Webprozesse und Server zu erstellen.
Als nächstes werden wir erklären Node.js Frameworks, die ihre nativen Funktionen für die schnelle und zuverlässige Entwicklung von Web- / Mobilanwendungen erweitern. Teilen Sie Ihre Gedanken zu diesem Artikel über den Kommentarbereich unten mit.