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 Erläuterung der Verwendung von Docker Commit

Manchmal müssen Sie bestimmte Abhängigkeiten im B...

Implementierungsbeispiel zum Schließen der Browserabmeldung in Vue

Inhaltsverzeichnis 1. beforeunload-Ereignis 2. Er...

Einige Parameterbeschreibungen von Texteingabefeldern im Webdesign

In Gästebüchern, Foren und anderen Orten werden i...

Probleme und Lösungen bei der Installation von Mininet auf Ubuntu 16.04.4LTS

Mininet Mininet ist eine leichtgewichtige, softwa...

Tipps zur Verwendung von DIV-Containern mit fester Höhe in IE6 und IE7

Es gibt viele Unterschiede zwischen IE6 und IE7 in...

Ein Beispiel für die Berechnungsfunktion calc in CSS im Website-Layout

calc ist eine Funktion in CSS, die zum Berechnen ...

JavaScript implementiert einen langen Bild-Scroll-Effekt

In diesem Artikel wird der spezifische Code für d...

HTML CSS3 streckt den Bildanzeigeeffekt nicht

1. Verwenden Sie das Transform-Attribut, um das B...

Detaillierte Erklärung zur Abfrage von Feldern im JSON-Format in MySQL

Während des Entwicklungsprozesses trat eine Anfor...

Detailliertes Beispiel des MySQL InnoDB-Sperrmechanismus

1. InnoDB-Sperrmechanismus Die InnoDB-Speicher-En...

Detaillierte Erläuterung des Datenproxys und der Ereignisse von VUE

Inhaltsverzeichnis Überprüfung der Object.defineP...