Heim Web-Frontend js-Tutorial Übersicht über die NodeJS-Anfrage „routing_node.js'.

Übersicht über die NodeJS-Anfrage „routing_node.js'.

May 16, 2016 pm 04:42 PM
nodejs 请求路由

Im Allgemeinen sollte der Server unterschiedlich auf verschiedene URL-Anfragen reagieren. Wir müssen der Route die angeforderte URL und andere erforderliche GET- und POST-Parameter bereitstellen, und dann muss die Route den entsprechenden Code basierend auf diesen Daten ausführen. Alle von uns benötigten Daten sind im Anforderungsobjekt enthalten, das als erster Parameter der Rückruffunktion onRequest() übergeben wird. Um diese Daten zu analysieren, müssen zusätzliche Module aufgerufen werden, nämlich die URL- und Querystring-Module.

URL:Dies
Das Modul verfügt über Dienstprogramme zur URL-Auflösung und -Analyse. Rufen Sie require('url') auf
Benutze es.

Geparste URL-Objekte verfügen über einige oder alle der folgenden Felder, je nachdem, ob sie in der URL-Zeichenfolge vorhanden sind oder nicht. Für die URL werden keine Beispiele angezeigt
'http://user:pass@host.com:8080/p/a/t/h?query=string#hash'

href: Die vollständige URL, die ursprünglich analysiert wurde. Sowohl das Protokoll als auch der Host werden in Kleinbuchstaben geschrieben.
Beispiel: 'http://user:pass@host.com:8080/p/a/t/h?query=string#hash'

Protokoll: Das Anforderungsprotokoll, in Kleinbuchstaben.
Beispiel: 'http:'

Host: Der vollständige Host-Teil der URL in Kleinbuchstaben, einschließlich Portinformationen.
Beispiel: 'host.com:8080'

Auth: Der Authentifizierungsinformationsteil einer URL.
Beispiel: 'user:pass'

Hostname: Nur der kleingeschriebene Teil des Hostnamens des Hosts.
Beispiel: 'host.com'

Port: Der Portnummernteil des Hosts.
Beispiel: '8080'

Pfadname: Der Pfadabschnitt der URL, der nach dem Host und vor der Abfrage steht, einschließlich des anfänglichen Schrägstrichs, falls vorhanden.
Beispiel: '/p/a/t/h'

Suche: Der „Abfragezeichenfolge“-Teil der URL, einschließlich des führenden Fragezeichens.
Beispiel: '?query=string'

Pfad: Verkettung von Pfadname und Suche.
Beispiel: '/p/a/t/h?query=string'

Abfrage: Entweder der „params“-Teil der Abfragezeichenfolge oder ein von der Abfragezeichenfolge analysiertes Objekt.
Beispiel: 'query=string' oder {'query':'string'}

Hash: Der „Fragment“-Teil der URL, einschließlich des Nummernzeichens.
Beispiel: '#hash'

Wir werden das Routing-Modul lose mithilfe der Abhängigkeitsinjektion hinzufügen. Die Funktion, die das Routing-Ziel ist, wird als Anforderungshandler bezeichnet. Die Implementierung der Anforderungsverarbeitungsfunktion muss ein Modul namens „requestHandlers“ erstellen. Fügen Sie für jeden Anforderungshandler eine Platzhalterfunktion hinzu und exportieren Sie diese Funktionen dann als Modulmethoden, sodass der Anforderungshandler und das Routing-Modul verbunden werden können, sodass das Routing verfolgt werden kann.

Insbesondere muss eine Reihe von Anforderungshandlern durch ein Objekt geleitet werden, und dieses Objekt muss lose gekoppelt in die Funktion route() eingefügt werden.

Wir können die Anforderungsverarbeitungsfunktion vom übergebenen Objekt auf die gleiche Weise abrufen wie Elemente aus dem assoziativen Array, sodass wir einen einfachen und reibungslosen Ausdruck wie handle[Pfadname](); haben. Der Code sieht so aus:


1

2

3

4

var handle = {}

handle["/"] = requestHandlers.start;

handle["/start"] = requestHandlers.start;

handle["/upload"] = requestHandlers.upload;

Nach dem Login kopieren
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Der Unterschied zwischen NodeJS und Tomcat Der Unterschied zwischen NodeJS und Tomcat Apr 21, 2024 am 04:16 AM

Die Hauptunterschiede zwischen Node.js und Tomcat sind: Laufzeit: Node.js basiert auf der JavaScript-Laufzeit, während Tomcat ein Java-Servlet-Container ist. E/A-Modell: Node.js verwendet ein asynchrones, nicht blockierendes Modell, während Tomcat synchrones Blockieren verwendet. Parallelitätsbehandlung: Node.js verarbeitet die Parallelität über eine Ereignisschleife, während Tomcat einen Thread-Pool verwendet. Anwendungsszenarien: Node.js eignet sich für Echtzeit-, datenintensive und Anwendungen mit hoher Parallelität, und Tomcat eignet sich für herkömmliche Java-Webanwendungen.

Der Unterschied zwischen NodeJS und VueJS Der Unterschied zwischen NodeJS und VueJS Apr 21, 2024 am 04:17 AM

Node.js ist eine serverseitige JavaScript-Laufzeitumgebung, während Vue.js ein clientseitiges JavaScript-Framework zum Erstellen interaktiver Benutzeroberflächen ist. Node.js wird für die serverseitige Entwicklung verwendet, beispielsweise für die Entwicklung von Back-End-Service-APIs und die Datenverarbeitung, während Vue.js für die clientseitige Entwicklung verwendet wird, beispielsweise für Single-Page-Anwendungen und reaktionsfähige Benutzeroberflächen.

Ist NodeJS ein Backend-Framework? Ist NodeJS ein Backend-Framework? Apr 21, 2024 am 05:09 AM

Node.js kann als Backend-Framework verwendet werden, da es Funktionen wie hohe Leistung, Skalierbarkeit, plattformübergreifende Unterstützung, ein umfangreiches Ökosystem und einfache Entwicklung bietet.

Was ist der Unterschied zwischen den Dateien npm und npm.cmd im Installationsverzeichnis von nodejs? Was ist der Unterschied zwischen den Dateien npm und npm.cmd im Installationsverzeichnis von nodejs? Apr 21, 2024 am 05:18 AM

Es gibt zwei npm-bezogene Dateien im Node.js-Installationsverzeichnis: npm und npm.cmd. Die Unterschiede sind wie folgt: unterschiedliche Erweiterungen: npm ist eine ausführbare Datei und npm.cmd ist eine Befehlsfensterverknüpfung. Windows-Benutzer: npm.cmd kann über die Eingabeaufforderung verwendet werden, npm kann nur über die Befehlszeile ausgeführt werden. Kompatibilität: npm.cmd ist spezifisch für Windows-Systeme, npm ist plattformübergreifend verfügbar. Nutzungsempfehlungen: Windows-Benutzer verwenden npm.cmd, andere Betriebssysteme verwenden npm.

Ist NodeJS eine Back-End-Entwicklungssprache? Ist NodeJS eine Back-End-Entwicklungssprache? Apr 21, 2024 am 05:09 AM

Ja, Node.js ist eine Backend-Entwicklungssprache. Es wird für die Back-End-Entwicklung verwendet, einschließlich der Handhabung serverseitiger Geschäftslogik, der Verwaltung von Datenbankverbindungen und der Bereitstellung von APIs.

Was sind die globalen Variablen in NodeJS? Was sind die globalen Variablen in NodeJS? Apr 21, 2024 am 04:54 AM

Die folgenden globalen Variablen sind in Node.js vorhanden: Globales Objekt: global Kernmodul: Prozess, Konsole, erforderlich Laufzeitumgebungsvariablen: __dirname, __filename, __line, __column Konstanten: undefiniert, null, NaN, Infinity, -Infinity

Gibt es einen großen Unterschied zwischen NodeJS und Java? Gibt es einen großen Unterschied zwischen NodeJS und Java? Apr 21, 2024 am 06:12 AM

Die Hauptunterschiede zwischen Node.js und Java sind Design und Funktionen: Ereignisgesteuert vs. Thread-gesteuert: Node.js ist ereignisgesteuert und Java ist Thread-gesteuert. Single-Threaded vs. Multi-Threaded: Node.js verwendet eine Single-Threaded-Ereignisschleife und Java verwendet eine Multithread-Architektur. Laufzeitumgebung: Node.js läuft auf der V8-JavaScript-Engine, während Java auf der JVM läuft. Syntax: Node.js verwendet JavaScript-Syntax, während Java Java-Syntax verwendet. Zweck: Node.js eignet sich für I/O-intensive Aufgaben, während Java für große Unternehmensanwendungen geeignet ist.

So stellen Sie das NodeJS-Projekt auf dem Server bereit So stellen Sie das NodeJS-Projekt auf dem Server bereit Apr 21, 2024 am 04:40 AM

Serverbereitstellungsschritte für ein Node.js-Projekt: Bereiten Sie die Bereitstellungsumgebung vor: Erhalten Sie Serverzugriff, installieren Sie Node.js, richten Sie ein Git-Repository ein. Erstellen Sie die Anwendung: Verwenden Sie npm run build, um bereitstellbaren Code und Abhängigkeiten zu generieren. Code auf den Server hochladen: über Git oder File Transfer Protocol. Abhängigkeiten installieren: Stellen Sie eine SSH-Verbindung zum Server her und installieren Sie Anwendungsabhängigkeiten mit npm install. Starten Sie die Anwendung: Verwenden Sie einen Befehl wie node index.js, um die Anwendung zu starten, oder verwenden Sie einen Prozessmanager wie pm2. Konfigurieren Sie einen Reverse-Proxy (optional): Verwenden Sie einen Reverse-Proxy wie Nginx oder Apache, um den Datenverkehr an Ihre Anwendung weiterzuleiten

See all articles