Apakah perisian tengah nod?

WBOY
WBOYasal
2022-04-15 17:17:173564semak imbas

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.

Apakah perisian tengah nod?

Persekitaran pengendalian tutorial ini: sistem Windows 10, nodejs versi 12.19.0, komputer Dell G3.

Apakah perisian tengah nod?

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:

Apakah perisian tengah nod?

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!

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