Home > Web Front-end > Front-end Q&A > How to send requests to the backend using Node.js

How to send requests to the backend using Node.js

PHPz
Release: 2023-04-17 16:00:13
Original
987 people have browsed it

Node.js is a JavaScript runtime environment based on the V8 engine, which can extend the scope of JavaScript from the browser to the server. It can make both front-end and back-end code written in JavaScript, so it includes front-end developers and back-end developers. Including those who started to learn and use Node.js for backend service development.

In Node.js, we can use the built-in http module to create an HTTP server. According to the provisions of the HTTP protocol, we can issue GET, POST, PUT, DELETE and other requests to obtain resources on the server, pass parameters, interact with data, etc. Let's learn how to use Node.js to send requests to the background.

Send GET request

In Node.js, we can use the request method in the http module to send HTTP requests. When sending a GET request, you only need to set the request method to 'GET'. The specific implementation is as follows:

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

The above is a simple GET request example, in which the options object contains the requested host name, Port number, path, and request method. In the http.request method, we pass options as the first parameter and then pass a callback function to handle the response. In the response callback function, we can obtain the response body and process it by listening to the data event.

Send POST request

When sending a POST request, we need to set the Content-Type of the request header to application/x-www-form-urlencoded and encode the parameters into key-value pairs. , put in the request body and pass it. The specific implementation is as follows:

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

The above is a simple POST request example, where data is a URLSearchParams instance used to store parameters, and the options object contains the requested host name, port number, path, request method and Request header information. Before getting a response from the server, the req.write() method must be called on the request object to ensure that the data is sent.

Send PUT request and DELETE request

You can also use the request method in the http module to send PUT request and DELETE request. You only need to set the request method to 'PUT' or 'DELETE'. That is Yes, the specific implementation is as follows:

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

The above is the whole process of how Node.js requests the background. Through these simple examples, I believe readers already have a certain understanding. In practical applications, it is often necessary to use various third-party modules for data processing and interaction, such as express, axios, etc. Readers can choose the appropriate module for development according to their own needs.

The above is the detailed content of How to send requests to the backend using Node.js. For more information, please follow other related articles on the PHP Chinese website!

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