中介軟體為主要的邏輯業務所服務,可分為:應用級中介軟體、路由級中介軟體、內建中介軟體、第三方中介軟體、錯誤級中介軟體。
1、應用級中介軟體
每乙個中介軟體就是呼叫乙個函式,需要配合其他的中介軟體或者路由使用
server (函式) 攔截所有的路由
server.use('/reg',函式);攔截特定的路由
const express=require('express');
var server=express();
server.listen(3000);
//中介軟體攔截註冊路由/reg
server.use('/reg',(req,res,next)=>);
server.use('/login',(req,res)=>)
server.get('/reg',(req,res,next)=>);
server.get('/login',(req,res)=>)
2、內建中介軟體
server.use(express.static('目錄'))
把靜態資源檔案託管到某乙個目錄,如果瀏覽器請求靜態資源,則自動到這個目錄下查詢
3、第三方中介軟體
(1)body-parser,將post請求資料解析為物件
const express = require('express');
//引入body-parser中介軟體
const bodyparser=require('body-parser');
var server=express();
server.listen(3000);
// 託管靜態資源到public
server.use(express.static('./public'));
//使用body-parser中介軟體,將post請求的資料解析為物件
//extended是否要使用擴充套件qs模組解析為物件
//如果是false,不使用,而去使用querystring模組
server.use(bodyparser.urlencoded(
))server.post('/mylogin',(req,res)=>)
(2)mysql模組
普通連線
//引入mysql模組
const mysql =require('mysql');
//1、普通連線
//1、1建立連線
var connection=mysql.createconnection();
執行連線
connection.connect();
//執行sql語句
connection.query('select * from emp',(err,result)=>);
//關閉連線
connection.end();
連線池
const mysql=require('mysql');
//使用連線池
//建立連線池物件
var pool=mysql.createpool(
);//執行sql語句
pool.query('select * from emp where eid=2',(err,result)=>)
const mysql=require('mysql');
var pool=mysql.createpool()
//使用佔位符插入資料
// pool.query("insert into emp values(?,?,?,?,?,?)",[null,'yt','1','1995-12-24','9000','20'],(err,result)=>);
//使用物件插入資料
// var emp=
// pool.query('insert into emp set ?',[emp],(err,result)=>)
//使用佔位符刪除編號為10的資料
pool.query('delete from emp where eid=?',[10],(err,result)=>
else
})
node中介軟體
前面的文章裡也介紹過了,express 是乙個簡潔 靈活的node.jsweb 應用開發框架,它提供一系列強大的特性,幫助你建立各種 web 和移動裝置應用。express專案的底層由許多的中介軟體在協同工作,可以這麼說,乙個express應用就是在呼叫各種中介軟體。中介軟體是乙個可訪問請求物件 r...
node中介軟體KOA函式
const koa require koa 應用程式物件 中介軟體 傳送http koa 接手http 中介軟體 其實就是 函式 function test 當請求傳送過來的時候,將函式 中介軟體 註冊到程式上 前端傳送乙個http請求 來觸發中介軟體 koa 中 只會執行第乙個中介軟體 ctx 上...
什麼是中介軟體,中介軟體有什麼作用
什麼是中介軟體,中介軟體有什麼作用 文 花純春 http blog.csdn.net metababy 關於中介軟體這概念,能解釋得簡單明白的文章,我只找到一篇,也許是我太笨了,理解不了高深的,也可能是像國內寫技術教程的多數人一樣,只會粗糙的翻譯國外的,自己甚至沒有對其中的 進行過驗證,這樣的文章,...