Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Apakah perisian tengah nod?
Dalam nod, middleware ialah kaedah enkapsulasi berfungsi, yang terutamanya merujuk kepada kaedah merangkum semua butiran permintaan http biasanya mengandungi banyak kandungan, jadi middleware boleh digunakan untuk memudahkan dan Mengasingkan butiran ini antara infrastruktur dan logik perniagaan.
Persekitaran pengendalian tutorial ini: sistem Windows 10, nodejs versi 12.19.0, komputer Dell G3.
Secara konsep, perisian tengah nodejs ialah kaedah pengkapsulan berfungsi, yang terutamanya merujuk kepada kaedah merangkum semua butiran permintaan Http.
Dalam nodeJS, middleware merujuk terutamanya kepada kaedah yang merangkumi semua butiran permintaan Http Permintaan Http biasanya merangkumi banyak kerja: seperti pengelogan, penapisan IP, rentetan pertanyaan, parsing badan permintaan, pemprosesan kuki, Kebenaran. pengesahan, pengesahan parameter, pengendalian pengecualian, dsb., tetapi untuk aplikasi web, mereka tidak mahu didedahkan kepada pemprosesan terperinci yang begitu banyak, jadi perisian tengah digunakan untuk memudahkan dan mengasingkan butiran antara infrastruktur dan logik perniagaan ini, membenarkan pembangun untuk The pengarang memberi lebih perhatian kepada pembangunan perniagaan model kerjanya adalah seperti berikut:
Pelaksanaan teras mekanisme middleware
Middleware dimulakan daripada permintaan HTTP kepada tindak balas Kaedah pemprosesan dalam proses akhir biasanya perlu memproses permintaan dan tindak balas, jadi perisian tengah asas adalah dalam bentuk berikut:
const middleware = (req, res, next) => { // TODO next() } 模拟最基本的中间件 // 定义简单的三个中间件 const httpMeth1 = (req, res, next) => { console.log('我是请求1') next() } const httpMeth2 = (req, res, next) => { console.log('我是请求2') next() } const httpMeth3 = (req, res, next) => { console.log('我是请求3') next() } // 中间件数组 const allHttpMeth = [httpMeth1, httpMeth2, httpMeth3] function run (req, res) { const next = () => { // 获取中间件 const allHttpMethitem = allHttpMeth.shift() if (allHttpMethitem) { // 执行 allHttpMethitem(req, res, next) } } next() } run() // 模拟请求发起
Jika terdapat operasi tak segerak dalam perisian tengah, ia perlu ditamatkan dalam proses operasi tak segerak Kemudian panggil kaedah seterusnya(), jika tidak, perisian tengah tidak boleh dilaksanakan mengikut urutan
Pembelajaran yang disyorkan: "tutorial video nodejs"
Atas ialah kandungan terperinci Apakah perisian tengah nod?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!