Maison  >  Article  >  interface Web  >  Middleware du framework express dans nodejs et analyse des méthodes app.use et app.get

Middleware du framework express dans nodejs et analyse des méthodes app.use et app.get

不言
不言original
2018-09-07 17:30:366381parcourir

Le contenu de cet article concerne le middleware du framework express dans nodejs et l'analyse des méthodes app.use et app.get. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. pour vous.

Utiliser Node pour développer des projets. Express est un framework couramment utilisé. Ce qui suit présente le middleware d'utilisation de base et les méthodes d'utilisation et d'obtention de l'application :

L'implémentation du middleware est. très simple :

// 一个简单的中间件
function middleware(req, res, next){
    // req 参数可以接受一些请求的参数(req.query/req.body) 和 请求头信息
    // res 用于响应信息
    // 调用next()方法则进入下一个中间件
}

// 几种常见的调用方式
app.use(middleware);
app.use('/user',middleware); // 匹配部分路径
app.get('/login',middleware);

Voici quelques utilisations de app.get/use :

app.get(path,function); // 接收两个参数 路径 和 一个回调函数
app.use(path,function/router); // 也是接收两个参数 路径和get的区别是第二个可以放回调函数或者router对象

//值得注意的是,path如果忽略,如:app.use(function/router);也是合法的写法,表示匹配所有的路径

Concernant l'écriture du chemin et de la fonction, l'exemple suivant :

// get 访问示例会匹配/app和其子集路径,如:http:127.0.0.1:3000/app 以及http:127.0.0.1:3000/app[/aa/bb...等等]都会匹配
app.get('/app',(req, res, next) => {
    //TODO SOMETHING...
});

//use 路由匹配和get方法一样
app.use('/app',(req, res, next) => {
    //TODO SOMETHING...
});

//另一种写法
app.use((req, res, next) => {
    //TODO SOMETHING...
});

Mais nous voyons aussi souvent cette méthode d'écriture :

const session = require('express-session');

app.use(session({
    secret: 'test01',
    resave: false,
    saveUninitialized: false
}));

En fait, l'implémentation derrière elle est également très simple. Il suffit de retourner une classe (req, res, next) => {}. fonction, par exemple :

// 实现思路
app.use(myFunction());

function myFunction(){
// 做一些处理
    return (req, res, next) => {
        next();
    }

}

Recommandations associées :

Un exemple de la façon d'obtenir des valeurs get et post et une vérification de session en express dans nodejs

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn