Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Bagaimana untuk melakukan pemajuan lapisan tengah dalam nodejs
Node.js ialah persekitaran masa jalan JavaScript yang membenarkan pembangun menulis kod sisi pelayan menggunakan bahasa JavaScript. Semasa proses pembangunan, Node.js sering digunakan sebagai lapisan tengah untuk merealisasikan penghantaran data atau permintaan ke hadapan antara hujung hadapan dan hujung belakang. Dalam artikel ini, saya akan memperkenalkan secara terperinci cara menggunakan Node.js untuk pemajuan peringkat pertengahan.
1. Kelebihan Node.js
Sebagai persekitaran berjalan JavaScript berdasarkan I/O dipacu peristiwa dan tak segerak, Node.js mempunyai kelebihan berikut dalam pembangunan aplikasi rangkaian:
2. Pemajuan lapisan tengah Node.js
Antara hujung hadapan dan hujung belakang, permintaan pelanggan perlu dimajukan melalui lapisan perantara. Pengguna mengakses halaman hadapan dengan menggunakan penyemak imbas, halaman hujung hadapan menghantar permintaan ke peringkat tengah, dan peringkat tengah memajukan permintaan ke bahagian belakang.
Lapisan tengah boleh ditulis menggunakan Node.js Berikut ialah langkah pelaksanaan kod:
(1) Buat pelayan HTTP Nod untuk .js.
const http = require('http'); const hostname = '127.0.0.1'; const port = 3000; const server = http.createServer((req, res) => { // 处理请求 }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
(2) Tetapkan port terbuka pelayan dan dengar permintaan HTTP pada port yang ditentukan pada mesin tempatan.
(3) Lapisan tengah menerima permintaan bahagian hadapan dan memajukan maklumat permintaan ke pelayan bahagian belakang.
const http = require('http'); const hostname = '127.0.0.1'; const port = 3000; const server = http.createServer((req, res) => { const options = { hostname: 'www.example.com', port: 80, path: req.url, method: req.method, headers: req.headers }; const proxyReq = http.request(options, (proxyRes) => { proxyRes.on('data', (chunk) => { res.write(chunk); }); proxyRes.on('end', () => { res.end(); }); res.writeHead(proxyRes.statusCode, proxyRes.headers); }); req.on('data', (chunk) => { proxyReq.write(chunk); }); req.on('end', () => { proxyReq.end(); }); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
(4) Dalam proses memproses permintaan oleh lapisan tengah, salin maklumat permintaan ke objek permintaan proksi, dan tambah alamat, port, kaedah permintaan dan permintaan bahagian belakang pelayan ke objek permintaan proksi maklumat pengepala, dan kemudian gunakan fungsi http.request() untuk meminta pelayan bahagian belakang.
(5) Dalam objek permintaan proksi, tambahkan fungsi mendengar untuk memproses data dan acara tamat yang dijawab oleh pelayan hujung belakang, dan keluarkan data respons ke bahagian hadapan.
(6) Tetapkan pemantauan acara di lapisan tengah pada masa yang sama Apabila penghantaran data permintaan bahagian hadapan selesai, data permintaan ditulis ke objek permintaan proksi Selepas penulisan data selesai. fungsi akhir digunakan.
(7) Selepas pemprosesan selesai, lepaskan objek permintaan proksi.
3. Ringkasan
Dalam artikel ini, kami memperkenalkan kaedah Node.js sebagai lapisan tengah untuk melaksanakan pemajuan permintaan Melalui model I/O tak segerak dan model utas tunggal, Node.js.js menjadi alat yang baik untuk mengendalikan sejumlah besar permintaan data kecil. Dalam amalan, pelaksanaan pemajuan lapisan tengah Node.js digunakan secara meluas dalam bidang aplikasi Contohnya, dalam seni bina perkhidmatan mikro, Node.js digunakan untuk merealisasikan komunikasi antara perkhidmatan, yang meningkatkan kebolehpercayaan dan skalabiliti sistem.
Atas ialah kandungan terperinci Bagaimana untuk melakukan pemajuan lapisan tengah dalam nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!