Lerner-serverseitiger JavaScript mit node.js
Node.js: ein modernes Framework zum Aufbau leistungsstarker Echtzeit-Webanwendungen
Node.js ist ein wichtiger Framework in der modernen Webentwicklung. Mit node.js kann JavaScript sowohl auf der Serverseite als auch auf der Client-Seite von End-to-End verwendet werden. Dieses Tutorial führt Sie durch die Installation von Node.js und demonstrieren, wie das erste "Hello World" -Programm schreibt. Letztendlich lernen Sie, wie Sie eine Wetter -API mit node.js erstellen und ausdrücken.
Was ist node.js?
Traditionell kann JavaScript nur in Webbrowsern ausgeführt werden, aber Node.js entstand aufgrund des wachsenden Interesses, es auf die Serverseite zu bringen.
Node.js unterscheidet sich geringfügig von anderen Servertechnologien, da es eher auf Ereignissen als auf Threads basiert. Webserver wie Apache, die zum Servieren von PHP und anderen CGI-Skripten verwendet wurden, sind threadbasiert, da sie für jede eingehende Anforderung einen System-Thread generieren. Während dies für viele Anwendungen ausreicht, ist das Thread-basierte Modell beim Umgang mit vielen Langzeitverbindungen (z. B. den für die Servieranwendungen erforderlichen Verbindungen wie Instant Messaging-Anwendungen nicht skalierbar.
"Jede E/A -Operation in node.js ist asynchron ..."
Node.js verwendet Ereignisschleifen anstelle von Threads und kann auf Millionen von gleichzeitigen Verbindungen skalieren. Es nutzt die Tatsache, dass der Server die meiste Zeit damit verbringt, auf E/A -Operationen zu warten (z. B. Lesen von Dateien von der Festplatte, auf externe Webdienste zuzugreifen oder auf die Abschluss von Dateien zu warten), da diese Vorgänge viel langsamer sind als Speichervorgänge. Jeder E/A -Betrieb in node.js ist asynchron, was bedeutet, dass der Server eingehende Anforderungen weiter verarbeiten kann, während der E/A -Vorgang im Gange ist. JavaScript eignet sich hervorragend für ereignisbasierte Programme, da es über anonyme Funktionen und Schließungen verfügt, wodurch die Definition von Inline-Rückrufen zu einem Kinderspiel und JavaScript-Entwickler bereits wissen, wie man auf diese Weise programmiert. Dieses ereignisbasierte Modell macht Node.js sehr schnell und macht die Skalierung von Echtzeit-Anwendungen sehr einfach.
Installieren
Node.js unterstützt offiziell Linux, MacOS, Microsoft Windows, Smartos und FreeBSD. So installieren Sie die neueste Version von node.js unter Windows (v16 und später), Ihr Computer muss Windows 8.1, 10 oder 11 ausgeführt werden.
NODE.JS hat einen eigenen Paketmanager integriert, der Kurzfilm namens Node Paket Manager (NPM) integriert, mit dem Sie Module von Drittanbietern aus der NPM-Registrierung installieren können.
- Laden Sie die neueste Version von node.js von nodejs.org herunter (die neueste Version ist 17.9.0 zum Zeitpunkt des Schreibens und die neueste LTS -Version 16.14.2). Dies sollte die .msi -Datei auf Ihrem Computer herunterladen.
- Führen Sie die Datei aus und vervollständigen Sie den Installationsassistenten. Die meisten Optionen sind optional - es sei denn, Sie haben einen guten Grund, müssen Sie den Programmpfad nicht ändern. Sie können Schokolade (einen Windows -Paket -Manager) installieren oder diesen Schritt überspringen.
- Nachdem der Installationsassistent fertiggestellt wurde und Node.js erfolgreich installiert ist, öffnen Sie das Terminal und führen Sie
npm -v
aus, um die NPM -Version anzuzeigen.
Wenn Sie in Ihrem Programm nach Node suchen, sollten Sie die Eingabeaufforderung node.js finden.
Die Eingabeaufforderung bietet eine Reply (Read-Evaluation-Print-Schleife), in der Sie Javascript node.js-Code eingeben und den Code sofort auswerten und das Ergebnis ausgeben können. Sie können JavaScript auch aus externen Dateien in Reply -Sessions und mehr laden.
Hallo Welt!
Das Erlernen einer neuen Technologie beginnt mit dem "Hello World!"
Erstens werden wir ein neues Node.js -Projekt erstellen. Öffnen Sie dazu Ihr Terminal, wechseln Sie zum Verzeichnis, in dem sich das Projekt befinden soll, und führen Sie den folgenden Befehl aus:
npm init
Sie werden aufgefordert, einige Informationen über die Bibliothek anzugeben, einschließlich der Bibliotheksnamen, des Autors, der Eintragsdatei, der Lizenz und der Version. Um diesen Schritt zu überspringen, fügen Sie die require
Funktion wie unten gezeigt (innerhalb von test.js ).
var util = required ("util");
Dies lädt das util
-Modul, das Dienstprogrammfunktionen für Aufgaben auf Systemebene wie das Druckausgang an einem Terminal enthält. Um eine Funktion in einem Modul zu verwenden, rufen Sie sie in den Variablen auf, die das Modul speichern - in diesem Fall den Befehl Knoten mit dem Dateinamen als Parameter.
Node test.js
Durch das Ausführen dieses Befehls wird "Hello World!" In der Befehlszeile ausgegeben.
Um einen HTTP -Server zu erstellen, müssen Sie das http
-Modul verwenden.
var util = required ("util"); var http = required ("http"); http.createServer (Funktion (req, res) {{ res.writeHead (200, {'content-type': 'text/html'}); Res.Write ('Hallo Welt!'); res.end (); }). Hören (8080); util.log ("Server, der unter https: // localhost: 8080/") ausgeführt wird;
Dieses Skript importiert das http
-Modul und erstellt einen HTTP -Server. Die anonyme Funktion, die an http.createServer()
übergeben wird, wird ausgeführt, wenn die Anfrage eingegangen ist. Besuchen Sie http://localhost:8080/
in Ihrem Browser und Sie werden Hello World sehen! .
3. Ein einfacher statischer Dateiserver
Ok, wir haben einen HTTP -Server erstellt, aber egal welche URL Sie besuchen, er wird nichts als "Hallo Welt" senden. Jeder HTTP -Server muss in der Lage sein, statische Dateien wie HTML -Dateien, Bilder und andere Dateien zu senden. So macht der folgende Code:
var util = require ("util"), http = required ("http"), URL = erfordern ("URL"), Pfad = erfordern ("Pfad"), fs = erfordern ("fs"); http.createServer (Funktion (Anfrage, Antwort) { var uri = path.parse (request.url) .base; var Filename = path.join (process.cwd (), URI); fs.access (Dateiname, fs.constants.f_ok, function (err) { if (err) { Antwort.WriteHead (404, {"Inhaltstyp": "text/plain"}); Antwort.Write ("404 nicht gefunden \ n"); Antwort.end (); zurückkehren; } fs.ReadFile (Dateiname, "binär", Funktion (Err, Datei) { if (err) { Antwort.WriteHead (500, {"Inhaltstyp": "text/plain"}); Antwort.Write (err "\ n"); Antwort.end (); zurückkehren; } Antwort.WriteHead (200); Antwort.Write (Datei, "binär"); Antwort.end (); }); }); }). Hören (8080); util.log ("Server, der unter http: // localhost: 8080/") ausgeführt wird;
Wir müssen zunächst alle Module in unserem Code verwenden. Dies schließt http
, path
und url
-Module ein, die die angeforderte eingehende URL analysieren und den Pfadnamen der Zugriffsdatei finden. Wir verwenden process.cwd()
(oder das aktuelle Arbeitsverzeichnis) und den Pfad zur angeforderten Datei, um den tatsächlichen Dateinamen auf der Festplatte des Servers zu finden.
Als nächstes überprüfen wir, ob die Datei vorhanden ist, was eine asynchrone Operation ist, sodass die Rückruffunktion erforderlich ist. Wenn die Datei nicht vorhanden ist, wird eine 404 nicht gefundene Nachricht an den Benutzer gesendet und die Funktion kehrt zurück. Andernfalls verwenden wir fs.readFile()
um die Datei zu lesen. Wenn Sie in Ihrem Browser http://localhost:8080/path/to/file
zugreifen, wird die Datei in Ihrem Browser angezeigt.
4. Bauen Sie die Wetter -API in Node.js mit Express auf
Basierend auf unserem statischen Dateiserver erstellen wir einen Node.js -Server, der die erwarteten Wetterbedingungen für eine bestimmte Stadt erhält und anzeigt. Erstens benötigen wir in diesem Beispiel zwei zusätzliche Module von Drittanbietern: das axios
-Modul und das express
Modul. Express ist ein Web -Framework zum Aufbau von erholsamen APIs in Node.js -Anwendungen. Wir werden das Express -Modul verwenden, um einen einzelnen API -Endpunkt zu erstellen, der die Stadt von jeder Anfrage abruft und mit einer HTML -Körperschaft reagiert, die die Wetterbedingungen für die Vorhersage der Stadt enthält. Die Wetterinformationen stammen aus der externen API. Daher stellen wir API -Anfragen mit axios
-Client aus.
Zunächst installieren wir die express
und axios
-Module gleichzeitig mit den folgenden Befehlen:
NPM I Expressachse
Dadurch werden beide Module aus der NPM -Registrierung installiert. Ersetzen Sie app.get()
durch den folgenden Code:
app.get ('/', (req, res) => { lass City = req.query.city; axios.get (`https://api.openweathermap.org/data/2.5/forecast?q=$ {City} & appid = {apikey}`) .then ((Antwort) => { if (response.status === 200) { Res.Send ("Das Wetter in Ihrer Stadt" $ {City} "ist<br> $ {response.data.list [0] .Weather [0] .Description} `) } }) .Catch ((err) => { console.log (err); }) })
Wir holen zuerst die Abfragezeichenfolge (Stadt) aus query
Anfragemobilie ab.
Wir verwenden dann axios
, um eine GET -Anfrage an die API der Wettervorhersage auszustellen. Die URL benötigt zwei Variablen: Wir möchten die prognostizierte Stadt und den einzigartigen API -Schlüssel im offenen Wetter -API -Informationszentrum erhalten.
Wir haben eine res.send()
-Methode eingerichtet. Wenn ein Fehler auftritt, können wir die Fehlerdaten einfach an der Konsole protokollieren, indem wir node test.js
in der Befehlszeile ausführen und die folgende URL in den Browser eingeben:
<code>http://localhost:3000/?city=nairobi</code>
Bitte beachten Sie, dass Nairobi durch jede Stadt Ihrer Wahl ersetzt werden kann. Hier sind die Ergebnisse, die Sie erhalten sollten.
Nächste Schritte
Node.js ist eine sehr aufregende Technologie, die die Schaffung von Echtzeitanwendungen mit leistungsstarker Leistung vereinfacht. Ich hoffe, Sie können die Vorteile davon sehen und in einigen Ihrer eigenen Anwendungen verwenden können. Da Node.js über ein leistungsstarkes Modulsystem verfügt, können Sie in Ihrer Anwendung die Verwendung von Open-Source-Drittanbietern einfach verwenden, und fast alles verfügt über Module: einschließlich einer Datenbankverbindungsebene, einer Vorlagen-Engine, eines Mail-Clients und sogar einem vollständigen Framework zum Anschließen aller Inhalte.
Ich wünsche Ihnen ein fröhliches Node.js -Programm!
Dieser Artikel wurde aktualisiert und enthält Beiträge von Kingsley Ubah. Kingsley ist begeistert davon, Inhalte zu erstellen, die die Leser erziehen und inspirieren. Zu den Hobbys gehören Lesen, Fußball und Radfahren.
Das obige ist der detaillierte Inhalt vonLerner-serverseitiger JavaScript mit node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

JavaScript ist der Eckpfeiler der modernen Webentwicklung. Zu den Hauptfunktionen gehören eine ereignisorientierte Programmierung, die Erzeugung der dynamischen Inhalte und die asynchrone Programmierung. 1) Ereignisgesteuerte Programmierung ermöglicht es Webseiten, sich dynamisch entsprechend den Benutzeroperationen zu ändern. 2) Die dynamische Inhaltsgenerierung ermöglicht die Anpassung der Seiteninhalte gemäß den Bedingungen. 3) Asynchrone Programmierung stellt sicher, dass die Benutzeroberfläche nicht blockiert ist. JavaScript wird häufig in der Webinteraktion, der einseitigen Anwendung und der serverseitigen Entwicklung verwendet, wodurch die Flexibilität der Benutzererfahrung und die plattformübergreifende Entwicklung erheblich verbessert wird.

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

JavaScript zu lernen ist nicht schwierig, aber es ist schwierig. 1) Verstehen Sie grundlegende Konzepte wie Variablen, Datentypen, Funktionen usw. 2) Beherrschen Sie die asynchrone Programmierung und implementieren Sie sie durch Ereignisschleifen. 3) Verwenden Sie DOM -Operationen und versprechen Sie, asynchrone Anfragen zu bearbeiten. 4) Vermeiden Sie häufige Fehler und verwenden Sie Debugging -Techniken. 5) Die Leistung optimieren und Best Practices befolgen.

Diskussion über die Realisierung von Parallaxe -Scrolling- und Elementanimationseffekten in diesem Artikel wird untersuchen, wie die offizielle Website der Shiseeido -Website (https://www.shiseeido.co.jp/sb/wonderland/) ähnlich ist ...

Zu den neuesten Trends im JavaScript gehören der Aufstieg von Typenkripten, die Popularität moderner Frameworks und Bibliotheken und die Anwendung der WebAssembly. Zukunftsaussichten umfassen leistungsfähigere Typsysteme, die Entwicklung des serverseitigen JavaScript, die Erweiterung der künstlichen Intelligenz und des maschinellen Lernens sowie das Potenzial von IoT und Edge Computing.

Wie fusioniere ich Array -Elemente mit derselben ID in ein Objekt in JavaScript? Bei der Verarbeitung von Daten begegnen wir häufig die Notwendigkeit, dieselbe ID zu haben ...

Eingehende Diskussion der Ursachen des Unterschieds in der Konsole.log-Ausgabe. In diesem Artikel wird die Unterschiede in den Ausgabeergebnissen der Konsolenfunktion in einem Code analysiert und die Gründe dafür erläutert. � ...
