Artikel ini akan membawa anda melalui perisian tengah Ekspres dalam nod, dan memperkenalkan konsep dan klasifikasi perisian tengah saya harap ia akan membantu anda.
Express ialah rangka kerja pembangunan aplikasi web yang mudah dan fleksibel yang boleh digunakan untuk membina aplikasi web berfungsi sepenuhnya sebagai alat berdasarkan Node rangka kerja perkhidmatan lapisan yang dirangkumkan oleh js, Express menyediakan API yang lebih mudah, menjadikan organisasi dan pengurusan aplikasi lebih mudah melalui perisian tengah dan penghalaan.
Middleware ialah penguraian modular fungsi pemprosesan permintaan kepada beberapa fungsi sub-pemprosesan Satu siri fungsi sub-pemprosesan boleh membentuk middleware Timbunan;
Perisian Tengah ialah fungsi yang boleh mengakses permintaan objek req, respons objek res dan seterusnya() dalam kitaran permintaan-tindak balas aplikasi. Fungsi next() bertanggungjawab terutamanya untuk menghantar kawalan ke middleware seterusnya jika middleware semasa tidak menamatkan permintaan dan next() tidak dipanggil, permintaan akan digantung dan middleware yang ditakrifkan kemudian tidak akan dilaksanakan. ,
Arahan pelaksanaan middleware adalah mengikut perintah pendaftaran dari atas ke bawah. Fungsi
Middleware boleh melaksanakan tugas berikut:
Tujuan utama perisian tengah ialah untuk memproses permintaan HTTP seperti pengesahan status log masuk, log permintaan, pengendalian ralat, kuki, dsb.
1 Perisian tengah peringkat aplikasi
Gunakan fungsi app.use() ke Aplikasi -perisian tengah peringkat terikat pada contoh objek aplikasi
const app = express(); /*表示匹配任何路由*/ app.use(function(req,res,next){ console.log('请求时间:' + Date.now()); /*表示匹配完成这个中间件就继续往下执行。*/ next() })
2 Perisian tengah peringkat penghalaan
Kerja perisian tengah peringkat laluan dan perisian tengah peringkat aplikasi Caranya adalah sama, kecuali ia terikat pada contoh penghala
import express from 'express'; const app = express(); const router = express.router(); router.use( '/user', function (req, res, next) { console.log(1); next(); }, function (req, res, next) { console.log(2); next(); }, function (rex, res, next) { console.log(3); next(); } );
3 Ralat mengendalikan middleware
Ralat mengendalikan middleware sentiasa memerlukan 4 parameter dan mesti Menyediakan 4 parameter untuk mengenal pasti ia sebagai fungsi middleware pengendalian ralat. Walaupun fungsi seterusnya tidak diperlukan, ia mesti dinyatakan. Jika tidak, fungsi seterusnya ditafsirkan sebagai middleware biasa dan ralat tidak boleh dikendalikan
app.use(function(err, req, res, next){ console.log(err.stack); res.status(500).send(err); })
4 middleware terbina dalam
Express mempunyai middleware terbina dalam berikut :
5 Perisian tengah pihak ketiga
Perisian tengah pihak ketiga seperti penghurai badan, penghurai kuki, dsb.
6 Perisian tengah tersuai
Perisian tengah tersuai ditakrifkan sebagai fungsi, menerima req , res, parameter seterusnya, gunakan app.use() untuk mendaftar middleware
function log(req,res,next) { req.requestTime = Date.now(); next() } // 注册自定义中间件 app.use(log);
// 自定义可配置中间件 function log(options) { return function (req,res,next) { // 根据options实现中间件功能 next } }
Untuk lebih banyak pengetahuan berkaitan nod, sila lawati: tutorial nodejs! !
Atas ialah kandungan terperinci Node Express belajar dan berbual tentang perisian tengah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!