Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > Bagaimana untuk mengeluarkan permintaan https dalam nod

Bagaimana untuk mengeluarkan permintaan https dalam nod

WBOY
Lepaskan: 2022-04-22 15:23:15
asal
4152 orang telah melayarinya

Kaedah: 1. Gunakan kaedah "https.get()" modul HTTP untuk mengeluarkan permintaan dapatkan 2. Gunakan kaedah umum "https.request()" untuk mengeluarkan permintaan siaran; . Gunakan permintaan PUT dan DELETE , cuma tukar "options.method" kepada PUT atau DELETE.

Bagaimana untuk mengeluarkan permintaan https dalam nod

Persekitaran pengendalian tutorial ini: sistem Windows 10, nodejs versi 12.19.0, komputer Dell G3.

Bagaimanakah nod membuat permintaan https?

Ketahui tentang modul HTTPS asli Node.js, yang boleh membuat permintaan HTTP tanpa sebarang kebergantungan luaran.

Memandangkan ia adalah modul asli, pemasangan tidak diperlukan. Anda boleh mengaksesnya melalui kod berikut:

const https = require('https');
Salin selepas log masuk

GET request

ialah contoh yang sangat mudah yang menggunakan kaedah https.get() modul HTTP Hantar permintaan GET:

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);
});
Salin selepas log masuk

Tidak seperti klien HTTP popular lain yang mengumpulkan respons dan mengembalikannya sebagai rentetan atau objek JSON, di sini anda perlu menggabungkan aliran data masuk untuk kegunaan kemudian. Satu lagi pengecualian yang ketara ialah modul HTTPS tidak menyokong janji, yang masuk akal kerana ia adalah modul peringkat rendah dan tidak begitu mesra pengguna.

Permintaan POST

Untuk membuat permintaan POST, kita perlu menggunakan kaedah https.request() generik. Tiada kaedah https.post() trengkas tersedia. Kaedah

https.request() menerima dua parameter:

  • pilihan — yang boleh menjadi objek literal, rentetan atau objek URL.

  • panggilan balik — Fungsi panggil balik yang digunakan untuk menangkap dan memproses respons.

Mari kita buat permintaan POST:

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();
Salin selepas log masuk

Protokol dan atribut `port' dalam objek pilihan adalah pilihan.

PUT dan DELETE permintaan

PUT dan DELETE format permintaan adalah serupa dengan permintaan POST. Cuma tukar nilai options.method kepada PUT atau DELETE.

Ini ialah contoh permintaan PADAM:

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();
Salin selepas log masuk

Pembelajaran yang disyorkan: "tutorial video nodejs"

Atas ialah kandungan terperinci Bagaimana untuk mengeluarkan permintaan https dalam nod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan