Home > Web Front-end > Front-end Q&A > How to issue https request in node

How to issue https request in node

WBOY
Release: 2022-04-22 15:23:15
Original
4153 people have browsed it

Method: 1. Use the "https.get()" method of the HTTP module to issue a get request; 2. Use the general "https.request()" method to issue a post request; 3. Use PUT and DELETE requests , just change "options.method" to PUT or DELETE.

How to issue https request in node

The operating environment of this tutorial: windows10 system, nodejs version 12.19.0, Dell G3 computer.

How node makes https requests

Learn about the Node.js native HTTPS module, which can make HTTP requests without any external dependencies.

Since it is a native module, no installation is required. You can access it via the following code:

const https = require('https');
Copy after login

GET request

is a very simple example that sends a GET using the https.get() method of the HTTP module Request:

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);
});
Copy after login

Unlike other popular HTTP clients that collect responses and return them as strings or JSON objects, here you need to concatenate the incoming data stream for later use. Another notable exception is that the HTTPS module does not support promises, which makes sense since it is a low-level module and not very user-friendly.

POST request

To make a POST request, we must use the generic https.request() method. There is no shorthand https.post() method available.

The https.request() method accepts two parameters:

  • options — which can be an object literal, a string, or a URL object.

  • callback —Callback function used to capture and process responses.

Let's make a POST request:

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();
Copy after login

The protocols and `port' attributes in the options object are optional.

PUT and DELETE requests

PUT and DELETE request formats are similar to POST requests. Just change the options.method value to PUT or DELETE.

This is an example of a DELETE request:

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();
Copy after login

Recommended learning: "nodejs video tutorial"

The above is the detailed content of How to issue https request in node. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template