Heim  >  Artikel  >  Web-Frontend  >  So fordern Sie andere Server in NodeJS an

So fordern Sie andere Server in NodeJS an

PHPz
PHPzOriginal
2023-04-26 09:06:24728Durchsuche

In den letzten Jahren hat sich die Front-End-Entwicklungstechnologie rasant weiterentwickelt und der Verantwortungsbereich von Front-End-Entwicklern ist immer umfangreicher geworden. Zusätzlich zu den gängigen HTML-, CSS- und JavaScript-Kenntnissen müssen Front-End-Entwickler auch einige Back-End-Entwicklungsfähigkeiten beherrschen, beispielsweise Node.js.

Node.js ist eine plattformübergreifende Open-Source-Betriebsumgebung, die auf der JavaScript-Sprache basiert und JavaScript serverseitig ausführen kann. Es nutzt ein ereignisgesteuertes, nicht blockierendes I/O-Modell und unterstützt die Datenübertragung in Echtzeit. Daher ist Node.js im Rahmen des modernen Entwicklungsmodells der Trennung von Front-End und Back-End zu einer wesentlichen Fähigkeit für Front-End-Entwickler geworden.

In Node.js ist das Senden von HTTP-Anfragen an andere Server nicht nur ein üblicher Vorgang, sondern auch eines der offiziell bereitgestellten Kernmodule, das „http“-Modul. Dieses Modul bietet Funktionen zum Implementieren von HTTP-Client-Anfragen und der HTTP-Serverseite (d. h. dem HTTP-Server von Node.js).

In diesem Artikel erklären wir, wie Sie das „http“-Modul von Node.js verwenden, um HTTP-Anfragen an andere Server zu senden.

  1. Verwenden Sie die Methode http.request(), um eine Anfrage zu senden

http.request(options[, callback])

Diese Methode gibt ein http.ClientRequest-Objekt zurück. Optionen ist ein Objekt mit den folgenden Eigenschaften:

  • Protokoll – das von der Anfrage verwendete Protokoll, z. B. http: oder https:.
  • Hostname – Der Domänenname oder die IP-Adresse des anzufordernden Servers.
  • Port – Die Portnummer, auf die der Server antwortet.
  • path – der angeforderte Pfad.
  • Methode – HTTP-Methode, die von der Anfrage verwendet wird, z. B. GET, POST.
  • headers – Objekt, das Anforderungsheader enthält.

Callback ist eine Funktion, die aufgerufen wird, wenn eine Antwort vom Server empfangen wird.

Im folgenden Beispiel senden wir eine GET-Anfrage an jsonplaceholder.typicode.com und geben die Details eines Blog-Beitrags zurück:

const http = require('http')

const options = {
  hostname: 'jsonplaceholder.typicode.com',
  path: '/posts/1',
  method: 'GET'
}

const req = http.request(options, (res) => {
  console.log(`状态码: ${res.statusCode}`)

  res.on('data', (data) => {
    console.log(`响应主体: ${data}`)
  })

  res.on('end', () => {
    console.log('响应中已无数据。')
  })
})

req.on('error', (error) => {
  console.error(`请求遇到问题: ${error}`)
})

req.end()

In diesem Beispiel wird ein http.ClientRequest-Objekt erstellt und ein GET an den Server gesendet. Anfrage unter Angabe von Daten im JSON-Format. Wenn eine Antwort vom Server empfangen wird, drucken Sie den Antwortstatuscode und den Antworttext aus.

  1. Verwenden Sie die Methode http.get(), um eine Anfrage zu senden

http.get(options[, callback])

Diese Methode ähnelt der Methode http.request(), kann jedoch nur GET-Anfragen implementieren .

Im folgenden Beispiel verwenden wir die Methode http.get(), um eine GET-Anfrage an denselben Server zu senden:

const http = require('http')

http.get('http://jsonplaceholder.typicode.com/posts/1', (res) => {
  console.log(`状态码: ${res.statusCode}`)

  res.on('data', (data) => {
    console.log(`响应主体: ${data}`)
  })

  res.on('end', () => {
    console.log('响应中已无数据。')
  })
}).on('error', (error) => {
  console.error(`请求遇到问题: ${error}`)
})

In diesem Beispiel verwenden wir die Methode http.get(), um eine GET-Anfrage an den jsonplaceholder zu senden Geben Sie eine GET-Anfrage des .typicode.com-Servers ein und drucken Sie den Antwortstatuscode und den Antworttext aus, wenn die Antwort vom Server empfangen wird.

  1. Verwenden Sie die Anforderungsbibliothek zum Senden von Anforderungen

Zusätzlich zum von Node.js bereitgestellten Modul „http“ gibt es auch einige Anforderungsbibliotheken wie request und axios. Diese Bibliotheken verfügen über erweiterte Funktionen, unterstützen Promises, verarbeiten Weiterleitungen und Fehler usw.

Im folgenden Beispiel verwenden wir die Anforderungsbibliothek, um eine GET-Anfrage an den Server jsonplaceholder.typicode.com zu senden:

const request = require('request')

request('http://jsonplaceholder.typicode.com/posts/1', (error, response, body) => {
  console.log(`状态码: ${response.statusCode}`)
  console.log(`响应主体: ${body}`)
})

In diesem Beispiel verwenden wir die Anforderungsbibliothek, um eine GET-Anfrage an den Server jsonplaceholder.typicode.com zu senden Server und gibt den Antwortstatuscode und den Antworttext aus, wenn die Antwort vom Server empfangen wird.

Zusammenfassung

In diesem Artikel wird erläutert, wie Sie das „http“-Modul von Node.js verwenden, um HTTP-Anfragen an andere Server zu senden. Grundlegende Anforderungsvorgänge können mit der Methode http.request() und der Methode http.get() implementiert werden, und Anforderungsbibliotheken (wie request und axios) können erweiterte Funktionen unterstützen. Entwickler können je nach ihren eigenen Bedürfnissen und Gewohnheiten verschiedene Möglichkeiten zur Implementierung von HTTP-Anforderungsvorgängen wählen.

Das obige ist der detaillierte Inhalt vonSo fordern Sie andere Server in NodeJS an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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