nodejs legt das Routing fest

WBOY
Freigeben: 2023-05-14 10:23:07
Original
1152 Leute haben es durchsucht

Mit der rasanten Entwicklung der Front-End-Technologie achten immer mehr Menschen auf die Back-End-Entwicklung. Als leichtgewichtiges Back-End-Framework wird Node.js von immer mehr Entwicklern erkannt und verwendet.

In Node.js ist das Festlegen des Routings ein sehr wichtiger Teil. Das Routing bestimmt, von welchem ​​Handler eine Anfrage bearbeitet werden soll. In diesem Artikel erfahren Sie, wie Sie das Routing einrichten.

1. Installieren Sie Node.js

Bevor wir mit der Einrichtung des Routings beginnen, müssen wir zuerst Node.js installieren. Node.js kann auf der offiziellen Website heruntergeladen und installiert werden.

Geben Sie nach Abschluss der Installation den folgenden Befehl in die Befehlszeile ein, um die Version von Node.js zu überprüfen:

node -v
Nach dem Login kopieren

2. Erstellen Sie die server.js-Datei #🎜 🎜##🎜 🎜#In Node.js müssen wir eine server.js-Datei erstellen, um den Server zu starten und das Routing einzurichten. In dieser Datei müssen wir das http-Modul einführen und eine Serverinstanz erstellen.

Das Folgende ist eine grundlegende server.js-Datei:

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello, World!
');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});
Nach dem Login kopieren

In der obigen Datei haben wir eine Serverinstanz erstellt und die IP-Adresse und Portnummer des Servers festgelegt. Wir haben diesem Server auch eine Verarbeitungsfunktion hinzugefügt, um eine „Hello, World!“-Antwort zu senden, wenn eine Anfrage eingeht.

Sie können den folgenden Befehl verwenden, um den Server in der Befehlszeile zu starten:

node server.js
Nach dem Login kopieren

3. Routing festlegen

Der Hauptzweck der Routing-Einstellung besteht darin, dem Server zu ermöglichen, den entsprechenden Handler basierend auf dem Anforderungspfad aufzurufen, wenn eine Anforderung eingeht.

Um diesen Zweck zu erreichen, müssen wir eine Routing-Tabelle definieren. Eine Routing-Tabelle ist ein Objekt, dessen Schlüssel die Pfade von Anforderungen und die Werte Handlerfunktionen sind.

Das Folgende ist eine einfache Routing-Tabelle:

const routes = {
  '/': homeHandler,
  '/about': aboutHandler,
  '/contact': contactHandler
};
Nach dem Login kopieren

In dieser Routing-Tabelle definieren wir drei Pfade: '/', '/about' und '/contact' '. Jeder Pfad ist einer Handlerfunktion zugeordnet.

Als nächstes müssen wir den Handler definieren. Ein Handler ist eine Funktion, die verschiedene Anfragen verarbeitet. Beispielsweise kann ein Handler eine HTML-Seite senden, eine Datenbank lesen oder eine API aufrufen.

Das Folgende ist ein einfacher Handler:

const homeHandler = (req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/html');
  res.end('<h1>Welcome to my homepage!</h1>');
};

const aboutHandler = (req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/html');
  res.end('<h1>About me</h1><p>I am a Node.js developer.</p>');
};

const contactHandler = (req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/html');
  res.end('<h1>Contact me</h1><p>You can contact me at nodejs@example.com.</p>');
};
Nach dem Login kopieren

Jeder Handler legt den HTTP-Statuscode, die Antwortheader und den Antworttext fest, damit die Anforderung beim Eintreffen korrekt verarbeitet werden kann Anfrage.

Jetzt müssen wir die Routing-Tabelle mit dem Handler verbinden. Wir können der Servererstellungsfunktion eine Routing-Funktion hinzufügen, um die Routing-Verarbeitung zu implementieren.

Das Folgende ist ein vollständiger Routenverarbeitungscode:

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const routes = {
  '/': homeHandler,
  '/about': aboutHandler,
  '/contact': contactHandler
};

const homeHandler = (req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/html');
  res.end('<h1>Welcome to my homepage!</h1>');
};

const aboutHandler = (req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/html');
  res.end('<h1>About me</h1><p>I am a Node.js developer.</p>');
};

const contactHandler = (req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/html');
  res.end('<h1>Contact me</h1><p>You can contact me at nodejs@example.com.</p>');
};

const server = http.createServer((req, res) => {
  const url = req.url;
  if (routes[url]) {
    routes[url](req, res);
  } else {
    res.statusCode = 404;
    res.setHeader('Content-Type', 'text/plain');
    res.end('404 - Not found');
  }
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});
Nach dem Login kopieren

In diesem Code verbinden wir die Routing-Tabelle mit dem Handler. Wenn eine Anfrage eintrifft, gleichen wir den Pfad der Anfrage mit der Routing-Tabelle ab. Wenn die Übereinstimmung erfolgreich ist, rufen wir den entsprechenden Handler auf. Wenn es keine Übereinstimmung gibt, senden wir als Antwort einen 404-Fehler.

4. Zusammenfassung

In Node.js ist das Festlegen des Routings ein sehr wichtiger Teil. Das Routing ist der Schlüsselfaktor bei der Entscheidung, von welchem ​​Handler eine Anfrage bearbeitet werden soll.

In diesem Artikel erfahren Sie, wie Sie das Routing einrichten. Durch die Lektüre dieses Artikels können Leser verstehen, wie man Server erstellt, Routing-Tabellen und Handler definiert und diese verbindet.

Node.js ist als flexibles und leicht zu erlernendes Backend-Framework eine große Hilfe bei der Verbesserung der Entwicklungseffizienz und des Entwicklerkompetenzniveaus.

Das obige ist der detaillierte Inhalt vonnodejs legt das Routing fest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!