Lernen Sie Node.js von Grund auf

Lernen Sie Node.js von Grund auf

URL-Modul

1.Parse-Methode

//test02.js
importiere http von 'http'
URL von „URL“ importieren
const parseUrl = url.parse('https://www.baidu.com/news?name=朱葛亮&age=18#helloworld')
console.log(parseUrl)
http.createServer((req, res) => {
    res.writeHead(200, {'Inhaltstyp': 'text/html; Zeichensatz=utf-8'})
    res.write('Hallo, hallo Welt!')
    res.ende()
}).listen(3000)
console.log('Mein Server läuft unter http://localhost:3000')

Analysieren Sie die URL-Adresse und erhalten Sie ein analysiertes URL-Detailobjekt, einschließlich Protokoll, Domänenname, Pfad, Port, Abfrageparameter, Hash und andere Informationen.

Der zweite Parameter ist ein Boolescher Wert, der standardmäßig auf „false“ gesetzt ist. Wenn „true“ übergeben wird, wird die Abfrage in ein Objekt umgewandelt.

const parseUrl = url.parse('https://www.baidu.com/news?name=朱葛亮&age=18#helloworld', true)
console.log(parseUrl)

2. Formatierungsmethode

Übergeben Sie ein URL-Informationsobjekt (das von der Parse-Methode zurückgegebene Objekt) und geben Sie einen bestimmten Pfad zurück. Diese Methode ist die umgekehrte Anwendung der Parse-Methode.

const formatUrl = url.format({
    Protokoll: 'https:',
    Schrägstriche: wahr,
    auth: null,
    Host: „www.baidu.com“,
    Port: null,
    Hostname: „www.baidu.com“,
    Hash: '#hallowelt',
    Suche: '?name=Zhuge Liang&age=18',
    Abfrage: 'Name=Zhuge Liang&Alter=18',
    Pfadname: '/news',
    Pfad: '/news?name=Zhuge Liang&age=18',
    href: „https://www.baidu.com/news?name=朱葛亮&age=18#hallowelt“
})
console.log(formatUrl) // Ausgabe https://www.baidu.com/news?name=朱葛亮&age=18#helloworld

3. Lösungsmethode

Verbinden oder Ersetzen von Nebenpfaden

const result1 = url.resolve('https://www.baidu.com', 'news')
const result2 = url.resolve('https://www.baidu.com/home', '')
const result3 = url.resolve('https://www.baidu.com/home', 'über')
const result4 = url.resolve('https://www.baidu.com/home/index', 'über')
const result5 = url.resolve('https://www.baidu.com/home/index?name=朱葛亮', 'über/hallo')
console.log(Ergebnis1)
console.log(Ergebnis2)
console.log(Ergebnis3)
console.log(Ergebnis4)
console.log(Ergebnis5)

Ausgabe:

Modul „Events“ (ereignisgesteuert)

1. Einführung des Event-Moduls

2. Erstellen Sie eine eventEmitter-Instanz

3. Verwenden Sie die On-Methode und die Emit-Methode in eventEmitter, um ereignisgesteuert zu implementieren, ähnlich wie $on und $emit in vue, dh im Publish-Subscribe-Modus

Asynchrone Anforderungen können wie folgt gelöst werden:

fs von 'fs' importieren
Ereignis aus „Ereignissen“ importieren

const eventEmitter = neues Ereignis.EventEmitter()

eventEmitter.on('Ereignisse', Daten => {
    console.log('Empfangene Daten', data.toString())
})

fs.readFile('static/index.html', (err, data) => {
    eventEmitter.emit('Ereignisse', Daten)
})

Das Pfadmodul

Pfad von „Pfad“ importieren
// Den Suffixnamen abrufen const extName = path.extname('index.html') // .html

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalten auf 123WORDPRESS.COM mehr Aufmerksamkeit schenken können!

Das könnte Sie auch interessieren:
  • Tutorial „Node.js von Grund auf lernen“: Beispiel für das Festlegen einer HTTP-Header-Methode
  • Lernen Sie Node.js von Grund auf. Eine Reihe von Tutorials. SQLite3- und MongoDB-Nutzungsanalyse.
  • Node.js von Grund auf lernen - Tutorial 6: Beispiel, wie EventEmitter Ereignisse sendet und empfängt
  • Node.js von Grund auf lernen, Serie 5: Beispiel für eine Serverüberwachungsmethode
  • Node.js von Grund auf lernen, Serie 4: Clientseitige und serverseitige Beispiele für die Implementierung mathematischer Operationen auf mehreren Seiten
  • Tutorial zur Node.js-Lernserie von Grund auf: Beispiel für eine mehrseitige mathematische Operation basierend auf dem Connect- und Express-Framework
  • Node.js von Grund auf lernen, Serie 4: Beispiele für mathematische Operationen, die auf mehreren Seiten implementiert sind

<<:  So installieren Sie die neueste Version von Docker mit dem Befehl „Deepin apt“

>>:  Implementierungsprozess von row_number in MySQL

Artikel empfehlen

Detaillierte Erklärung des JavaScript-Proxy-Objekts

Inhaltsverzeichnis 1. Was ist ein Proxy? 2. Wie w...

Hinweise zum virtuellen Dateisystem des Linux-Kernel-Gerätetreibers

/******************** * Virtuelles Dateisystem VF...

Warum wird deine Like-Aussage nicht indexiert?

Vorwort Dieser Artikel zielt darauf ab, die langw...

Fehler bei der Eingabe chinesischer Zeichen im Flex-Programm Firefox

In niedrigeren Versionen von Firefox können keine ...

Allgemeine Lösungen für das Ablaufen der Lese-/Schreibtrennung in MySQL

Die Fallstricke der Lese- und Schreibtrennung in ...

So installieren Sie MySQL unter Linux (Yum und Quellcode-Kompilierung)

Es gibt zwei Möglichkeiten, MySQL unter Linux zu ...

Tutorial zur Tomcat-Konfiguration für Nginx/Httpd-Lastausgleich

Im vorherigen Blog haben wir über die Verwendung ...

Mehrere Methoden zur Implementierung von Karussellbildern in JS

Karussell Die Grundidee ist: Im großen Container ...

Lösung für das Problem der Werteübergabe zwischen HTML-Seiten

Als ich den Aufsatz zum ersten Mal verwendete, füh...

Detaillierte Erklärung zur Verwendung der Vue h-Funktion

Inhaltsverzeichnis 1. Verstehen 2. Verwendung 1. ...

Fallerklärung für den Nginx-Reverse-Proxy zu Go-FastDFS

Hintergrund go-fastdfs ist ein verteiltes Dateisy...