So schreiben Sie Ihre erste Node.js-App unter Linux

Die Webentwicklungstrends haben sich in den letzten Jahren drastisch geändert. Als Webentwickler ist es wichtig, stets auf dem neuesten Stand zu sein, um an der Spitze Ihres Spiels zu stehen.

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.

  1. 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.
Nodejs App-Initialisierung
Nodejs App-Initialisierung

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
Starten Sie die Nodejs App mit NPM
Starten Sie die Nodejs App mit NPM

Ö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
Greifen Sie über den Browser auf die Nodejs-App zu
Greifen Sie über den Browser auf die Nodejs-App zu

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
Zeigen Sie Ihre App-Anfragen vom Client an
Zeigen Sie Ihre App-Anfragen vom Client an

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.

Website-Seiten anzeigen
Website-Seiten anzeigen

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.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *