Rumah  >  Artikel  >  hujung hadapan web  >  proses permintaan nodejs

proses permintaan nodejs

PHPz
PHPzasal
2023-05-17 09:19:07533semak imbas

Node.js ialah persekitaran JavaScript sisi pelayan berdasarkan model I/O yang dipacu peristiwa dan tidak menyekat, yang boleh digunakan untuk membina aplikasi web yang cekap dan berskala. Untuk proses pemprosesan permintaan Node.js, kami perlu menumpukan pada pelaksanaan pelayan HTTP dan penghalaan masing-masing.

Pelayan HTTP

Modul pelayan HTTP Node.js Modul http menyediakan kaedah createServer() untuk mencipta pelayan HTTP. Setiap kali pelanggan menghantar permintaan kepada pelayan, kaedah ini akan mengembalikan contoh Pelayan, membolehkan kami memantau dan membalas kejadian ini.

Buat pelayan HTTP

const http = require('http');

http.createServer((request, response) => {
  // 请求处理
}).listen(8080);

Acara permintaan pelayan HTTP

Setiap kali pengguna menghantar permintaan HTTP ke pelayan, pelayan akan menjana objek dan Pencetus http.IncomingMessage secara automatik peristiwa permintaan, yang melaluinya kami boleh menerima dan memproses permintaan HTTP. Objek http.IncomingMessage juga mengandungi semua data yang dibawa oleh permintaan, seperti laluan permintaan, kaedah permintaan, pengepala permintaan, badan permintaan, dsb.

const http = require('http');

http.createServer((request, response) => {
  // request事件
  request.on('data', (chunk) => {
    console.log(chunk.toString());
  });

  // 处理请求
  response.writeHead(200, {'Content-Type': 'text/plain'});
  response.end('Hello World
');
}).listen(8080);

Penghalaan

Penghalaan merujuk pada pemadanan pemproses yang sepadan mengikut laluan permintaan URL untuk mencapai kaedah dan kesan akses URL yang berbeza.

Pelaksanaan penghalaan

Kami boleh menggunakan objek JavaScript untuk menyimpan kaedah pengendali yang sepadan dengan URL yang berbeza, dan kemudian memadankan objek mengikut laluan permintaan dalam acara permintaan pelayan http, oleh itu Cari kaedah pemproses yang sepadan untuk pemprosesan.

const http = require('http');

const urlHandler = {
  '/': function(request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
    response.end('Hello World
');
  },
  '/about': function(request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
    response.end('About page
');
  }
};

http.createServer((request, response) => {
  const path = request.url;

  if (urlHandler[path]) {
    urlHandler[path](request, response);
  } else {
    response.writeHead(404, {'Content-Type': 'text/plain'});
    response.end('404 Not Found
');
  }
}).listen(8080);

Di atas adalah pelaksanaan mudah proses pemprosesan permintaan Node.js Melalui kerja kolaboratif pelayan HTTP dan modul penghalaan, kami boleh membina pelayan web yang cekap dan berskala untuk melaksanakan pelbagai aplikasi web yang menarik. program.

Atas ialah kandungan terperinci proses permintaan nodejs. 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