Rumah  >  Artikel  >  hujung hadapan web  >  Cara menggunakan Node.js untuk mendengar permintaan

Cara menggunakan Node.js untuk mendengar permintaan

PHPz
PHPzasal
2023-04-17 15:00:541312semak imbas

Node.js ialah persekitaran JavaScript bahagian pelayan yang sangat popular Salah satu kelebihan utamanya ialah keupayaannya untuk mengendalikan sejumlah besar permintaan serentak. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Node.js untuk mendengar permintaan.

Untuk menggunakan Node.js untuk mendengar permintaan, kami perlu membuat pelayan terlebih dahulu. Dalam Node.js, pelayan boleh dibuat melalui modul http terbina dalam. Berikut ialah contoh pelayan mudah:

const http = require("http");

const server = http.createServer((req, res) => {
  res.writeHead(200, { "Content-Type": "text/plain" });
  res.write("Hello, World!");
  res.end();
});

server.listen(3000, () => {
  console.log("Server listening on port 3000");
});

Dalam contoh ini, kami mencipta pelayan dan mendengar permintaan pada port 3000. Apabila permintaan diterima, pelayan akan mengembalikan respons HTTP yang mengandungi "Hello, World!"

Kini kita boleh memulakan pelayan dan mengaksesnya menggunakan penyemak imbas. Hanya taip http://localhost:3000 ke dalam penyemak imbas anda dan anda akan melihat mesej "Hello, World!" Ini bermakna pelayan berfungsi seperti biasa dan telah mendengar permintaan.

Mari kita lihat beberapa contoh penggunaan Node.js untuk mendengar permintaan dalam tindakan.

Mengendalikan permintaan GET

Contoh pertama:

const http = require("http");

const server = http.createServer((req, res) => {
  if (req.method === "GET" && req.url === "/") {
    res.writeHead(200, { "Content-Type": "text/plain" });
    res.write("Hello, World!");
    res.end();
  } else {
    res.writeHead(404, { "Content-Type": "text/plain" });
    res.write("404 Not Found");
    res.end();
  }
});

server.listen(3000, () => {
  console.log("Server listening on port 3000");
});

Dalam contoh ini, kami hanya memproses permintaan GET dan hanya menerima permintaan daripada permintaan laluan akar/. Jika URL yang diminta bukan /, ralat 404 Not Found dikembalikan.

Memproses permintaan POST

Jika anda ingin memproses permintaan POST, anda perlu menggunakan modul querystring terbina dalam Node.js untuk menghuraikan data dalam badan permintaan. Berikut ialah contoh mudah:

const http = require("http");
const qs = require("querystring");

const server = http.createServer((req, res) => {
  if (req.method === "POST" && req.url === "/") {
    let body = "";
    req.on("data", (chunk) => {
      body += chunk;
    });
    req.on("end", () => {
      const data = qs.parse(body);
      res.writeHead(200, { "Content-Type": "text/plain" });
      res.write(`Hello, ${data.name}!`);
      res.end();
    });
  } else {
    res.writeHead(404, { "Content-Type": "text/plain" });
    res.write("404 Not Found");
    res.end();
  }
});

server.listen(3000, () => {
  console.log("Server listening on port 3000");
});

Dalam contoh ini, kami mengendalikan permintaan POST dan menghuraikan data dalam badan permintaan. Dalam respons, kami menggunakan nama daripada badan permintaan untuk membuat mesej yang diperibadikan.

Memproses fail statik

Dalam aplikasi sebenar, kami biasanya menyediakan perkhidmatan fail statik pada pelayan Node.js. Untuk melakukan ini, kita boleh menggunakan rangka kerja express dan modul serve-static untuk mendayakan penyajian fail statik. Berikut ialah contoh menggunakan express dan serve-static:

const express = require("express");
const serveStatic = require("serve-static");

const app = express();
app.use(serveStatic("public", { index: false }));

const port = process.env.PORT || 3000;
app.listen(port, () => {
  console.log(`Server listening on http://localhost:${port}`);
});

Dalam contoh ini, kami menentukan direktori di mana fail statik yang akan disampaikan berada (dalam kes ini direktori public) , dan serahkannya kepada serve-static perisian tengah. Kami kemudian menambah perisian tengah itu pada contoh app. Kini, kita boleh menggunakan express untuk mencipta perkhidmatan fail statik dan mendengar permintaan pada port 3000.

Kesimpulan

Di atas ialah beberapa contoh mendengar permintaan dan mengendalikannya dalam Node.js. Senario aplikasi yang berbeza memerlukan kaedah yang berbeza. Dengan menggunakan modul HTTP terbina dalam Node.js, kami boleh membuat pelayan dengan mudah untuk mendengar permintaan, dan melalui beberapa perisian tengah kami juga boleh mengendalikan pelbagai jenis permintaan dengan mudah. Kami berharap contoh ini membantu anda memahami cara mendengar permintaan dalam Node.js.

Atas ialah kandungan terperinci Cara menggunakan Node.js untuk mendengar permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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