Heim  >  Artikel  >  Web-Frontend  >  So senden Sie Anfragen mit Node.js an das Backend

So senden Sie Anfragen mit Node.js an das Backend

PHPz
PHPzOriginal
2023-04-17 15:21:21946Durchsuche

Node.js ist eine auf der V8-Engine basierende JavaScript-Laufzeitumgebung, die den Umfang von JavaScript vom Browser auf den Server erweitern kann. Sie kann sowohl Front-End- als auch Back-End-Code in JavaScript schreiben umfasst Front-End-Entwickler und Back-End-Entwickler. Entwickler, einschließlich Entwickler, haben begonnen, Node.js für die Entwicklung von Backend-Diensten zu erlernen und zu verwenden.

In Node.js können wir das integrierte http-Modul verwenden, um einen HTTP-Server zu erstellen. Gemäß den Bestimmungen des HTTP-Protokolls können wir GET-, POST-, PUT-, DELETE- und andere Anforderungen stellen, um Ressourcen auf dem Server abzurufen, Parameter zu übergeben, mit Daten zu interagieren usw. Erfahren Sie, wie Sie mit Node.js Anfragen an den Hintergrund senden.

GET-Anfrage senden

In Node.js können wir die Anforderungsmethode im http-Modul verwenden, um HTTP-Anfragen zu senden. Wenn Sie eine GET-Anfrage senden, müssen Sie nur die Anfragemethode auf „GET“ setzen. Die spezifische Implementierung lautet wie folgt:

const http = require('http');

const options = {
  hostname: 'localhost',
  port: 3000,
  path: '/',
  method: 'GET'
};

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

  res.on('data', (d) => {
    process.stdout.write(d);
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.end();

Das Obige ist ein einfaches GET-Anfragebeispiel, in dem das Optionsobjekt enthält der angeforderte Hostname, die Portnummer, der Pfad und die Anforderungsmethode. In der http.request-Methode übergeben wir Optionen als ersten Parameter und übergeben dann eine Rückruffunktion, um die Antwort zu verarbeiten. In der Antwortrückruffunktion können wir den Antworttext abrufen und ihn verarbeiten, indem wir das Datenereignis abhören.

POST-Anfrage senden

Beim Senden einer POST-Anfrage müssen wir den Inhaltstyp des Anforderungsheaders auf application/x-www-form-urlencoded setzen und kodieren Parameter als Schlüssel. Die Form von Wertepaaren wird im Anfragetext übergeben. Die spezifische Implementierung lautet wie folgt:

const http = require('http');

const data = new URLSearchParams();
data.append('username', 'admin');
data.append('password', '123456');

const options = {
  hostname: 'localhost',
  port: 3000,
  path: '/',
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Length': data.length
  }
};

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

  res.on('data', (d) => {
    process.stdout.write(d);
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.write(data.toString());
req.end();

Das Obige ist ein einfaches POST-Anfragebeispiel, bei dem es sich bei den Daten um eine URLSearchParams-Instanz handelt, die zum Speichern von Parametern verwendet wird, und das Optionsobjekt den angeforderten Hostnamen, die Portnummer und den Pfad enthält und Anforderungsmethode und Anforderungsheaderinformationen. Bevor eine Antwort vom Server erhalten wird, muss die Methode req.write() für das Anforderungsobjekt aufgerufen werden, um sicherzustellen, dass die Daten gesendet werden.

PUT-Anfragen und DELETE-Anfragen senden

Sie können auch die Anfragemethode im http-Modul verwenden, um PUT-Anfragen und DELETE-Anfragen zu senden. Sie müssen nur die Anfragemethode auf einstellen „PUT“ oder „DELETE“ ist ausreichend:

// 发送 PUT 请求
const options = {
  hostname: 'localhost',
  port: 3000,
  path: '/',
  method: 'PUT',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Length': data.length
  }
};
const req = http.request(options, (res) => {
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', (d) => {
    process.stdout.write(d);
  });
});

// 发送 DELETE 请求
const options = {
  hostname: 'localhost',
  port: 3000,
  path: '/',
  method: 'DELETE'
};
const req = http.request(options, (res) => {
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', (d) => {
    process.stdout.write(d);
  });
});

Das Obige ist der gesamte Prozess, wie Node.js den Hintergrund anfordert, glaube ich bereits ein gewisses Verständnis haben. In praktischen Anwendungen ist es häufig erforderlich, verschiedene Module von Drittanbietern für die Datenverarbeitung und -interaktion zu verwenden, z. B. Express, Axios usw. Der Leser kann das entsprechende Modul für die Entwicklung entsprechend seinen eigenen Anforderungen auswählen.

Das obige ist der detaillierte Inhalt vonSo senden Sie Anfragen mit Node.js an das Backend. 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