Node.js ialah persekitaran operasi bahagian pelayan yang sangat berkuasa dan rangka kerja pembangunan bahagian belakang yang popular. Node.js mempunyai banyak ciri berkuasa, salah satunya ialah perisian tengah. Middleware ialah konsep penting dalam Node.js, yang menyediakan aplikasi Node.js dengan cara yang lebih fleksibel dan boleh disesuaikan untuk mengendalikan permintaan. Dalam artikel berikut, kami akan membincangkan cara menggunakan perisian tengah dalam Node.js.
Apakah perisian tengah?
Dalam Node.js, middleware ialah fungsi yang boleh mengakses objek permintaan aplikasi (req), objek respons (res) dan menghantar kawalan terus ke fungsi middleware seterusnya. Fungsi middleware biasanya direka untuk melaksanakan operasi tertentu, seperti pengelogan permintaan, pengesahan, pengesahan data, dsb.
Perisian tengah ialah salah satu ciri Node.js yang sangat berkuasa Ia boleh menyediakan fungsi berikut:
Middleware Cara ia berfungsi
Middleware ialah ciri penting Node.js, dan mod operasi serta kitaran hayatnya sangat mudah difahami. Ringkasnya, apabila permintaan HTTP memasuki pelayan, semua fungsi middleware dalam aplikasi akan dilaksanakan mengikut urutan. Setiap fungsi middleware boleh mengendalikan objek permintaan dan tindak balas, dan secara pilihan boleh menghantar permintaan kepada middleware seterusnya.
Mari kita lihat format penggunaan asas middleware:
app.use(function (req, res, next) { console.log('This is a middleware function'); next(); });
Dalam contoh di atas, kami mentakrifkan fungsi middleware. Apabila fungsi ini dipanggil oleh aplikasi, ia mencetak mesej log dan kemudian memanggil kaedah seterusnya(). Kaedah next() memindahkan kawalan ke fungsi middleware seterusnya (jika ada).
Jika kaedah seterusnya() tidak dipanggil, permintaan akan digantung dan tidak akan diteruskan. Dalam kes ini, aplikasi tidak menghantar sebarang respons. Ini biasanya keadaan ralat, jadi apabila menulis fungsi middleware, pastikan anda berhati-hati tentang memanggil kaedah next().
Klasifikasi perisian tengah Node.js
Dalam Node.js, perisian tengah boleh dibahagikan kepada dua jenis berikut:
perisian tengah peringkat aplikasi
perisian tengah peringkat aplikasi merujuk kepada perisian tengah yang boleh mengendalikan semua permintaan aplikasi semasa. Perisian tengah ini ditambah melalui kaedah app.use(). Contohnya, log semua permintaan, laksanakan pengesahan dan banyak lagi.
let express = require('express'); let app = express(); app.use(function (req, res, next) { console.log('Time:', Date.now()); next(); });
perisian tengah peringkat penghalaan
perisian tengah peringkat penghalaan, seperti namanya, ialah perisian tengah yang hanya boleh memproses permintaan penghalaan semasa. Perisian tengah ini ditambah melalui kaedah use() objek Penghala. Contohnya: laksanakan pengesahan permintaan, laksanakan caching, dsb.
let express = require('express'); let router = express.Router(); router.use(function (req, res, next) { console.log('Request URL:', req.originalUrl); next(); });
Menggunakan perisian tengah pihak ketiga
Dalam Node.js, menggunakan perisian tengah pihak ketiga biasanya merupakan amalan yang sangat biasa. Pendekatan ini membolehkan kami menambah fungsi sedia ada pada aplikasi kami tanpa perlu menghabiskan masa dan usaha untuk menulis kod kami sendiri. Berikut ialah cara menggunakan middleware pihak ketiga yang sangat terkenal, middleware body-parser.
let express = require('express'); let bodyParser = require('body-parser'); let app = express(); // 处理 application/x-www-form-urlencoded 类型的请求体 app.use(bodyParser.urlencoded({ extended: false })); // 处理 application/json 类型的请求体 app.use(bodyParser.json());
Ringkasan
Dalam artikel ini, kami mempelajari definisi, fungsi dan klasifikasi perisian tengah Node.js. Middleware ialah konsep yang sangat penting dalam Node.js Melalui middleware, kami boleh menambah lebih banyak fungsi dan fleksibiliti pada aplikasi. Sama ada perisian tengah peringkat aplikasi atau perisian tengah peringkat laluan, dengan menggunakan fungsi perisian tengah dengan betul, anda boleh melaksanakan logik aplikasi anda dengan cara yang lebih cekap.
Atas ialah kandungan terperinci pelaksanaan perisian tengah nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!