Heim > Web-Frontend > Front-End-Fragen und Antworten > So stellen Sie eine https-Anfrage im Knoten aus

So stellen Sie eine https-Anfrage im Knoten aus

WBOY
Freigeben: 2022-04-22 15:23:15
Original
4153 Leute haben es durchsucht

Methode: 1. Verwenden Sie die Methode „https.get()“ des HTTP-Moduls, um eine Get-Anfrage zu stellen. 2. Verwenden Sie die allgemeine Methode „https.request()“, um eine Post-Anfrage zu stellen DELETE-Anfragen, einfach hinzufügen. Ändern Sie einfach „options.method“ in PUT oder DELETE.

So stellen Sie eine https-Anfrage im Knoten aus

Die Betriebsumgebung dieses Tutorials: Windows 10-System, NodeJS-Version 12.19.0, Dell G3-Computer.

Wie Node https-Anfragen stellt

Erfahren Sie mehr über das native HTTPS-Modul von Node.js, das HTTP-Anfragen ohne externe Abhängigkeiten stellen kann.

Da es sich um ein natives Modul handelt, ist keine Installation erforderlich. Sie können über den folgenden Code darauf zugreifen:

const https = require('https');
Nach dem Login kopieren

GET request

ist ein sehr einfaches Beispiel, das die https.get()-Methode des HTTP-Moduls verwendet, um eine GET-Anfrage zu senden:

const https = require('https');
https.get('https://reqres.in/api/users', (res) => {
    let data = '';
    // called when a data chunk is received.
    res.on('data', (chunk) => {
        data += chunk;
    });
    // called when the complete response is received.
    res.on('end', () => {
        console.log(JSON.parse(data));
    });
}).on("error", (err) => {
    console.log("Error: ", err.message);
});
Nach dem Login kopieren

mit anderen beliebten HTTP-Clients Im Gegensatz zum Sammeln der Antwort und deren Rückgabe als String oder JSON-Objekt müssen Sie hier den eingehenden Datenstrom für die spätere Verwendung verketten. Eine weitere bemerkenswerte Ausnahme ist, dass das HTTPS-Modul keine Versprechen unterstützt, was sinnvoll ist, da es sich um ein Low-Level-Modul handelt und nicht sehr benutzerfreundlich ist.

POST-Anfrage

Um eine POST-Anfrage zu stellen, müssen wir die generische https.request()-Methode verwenden. Es ist keine Abkürzungsmethode https.post() verfügbar. Die Methode

https.request() akzeptiert zwei Parameter:

  • options – das kann ein Objektliteral, eine Zeichenfolge oder ein URL-Objekt sein.

  • callback – Rückruffunktion zum Erfassen und Verarbeiten der Antwort.

Lassen Sie uns eine POST-Anfrage stellen:

const https = require('https');
const data = JSON.stringify({
    name: 'John Doe',
    job: 'DevOps Specialist'
});
const options = {
    protocol: 'https:',
    hostname: 'reqres.in',
    port: 443,
    path: '/api/users',
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'Content-Length': data.length
    }
};
const req = https.request(options, (res) => {
    let data = '';
    res.on('data', (chunk) => {
        data += chunk;
    });
    res.on('end', () => {
        console.log(JSON.parse(data));
    });
}).on("error", (err) => {
    console.log("Error: ", err.message);
});
req.write(data);
req.end();
Nach dem Login kopieren

Die Protokolle und „Port“-Attribute im Optionsobjekt sind optional.

PUT- und DELETE-Anfragen

PUT- und DELETE-Anfrageformate ähneln POST-Anfragen. Ändern Sie einfach den Wert von „options.method“ in „PUT“ oder „DELETE“.

Dies ist ein Beispiel für eine DELETE-Anfrage:

const https = require('https');
const options = {
    hostname: 'reqres.in',
    path: '/api/users/2',
    method: 'DELETE'
};
const req = https.request(options, (res) => {
    // log the status
    console.log('Status Code:', res.statusCode);
}).on("error", (err) => {
    console.log("Error: ", err.message);
});
req.end();
Nach dem Login kopieren

Empfohlenes Lernen: „nodejs-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo stellen Sie eine https-Anfrage im Knoten aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage