zoukankan      html  css  js  c++  java
  • learning express step(五)

    learning  express  middleware

    var express = require('express');
    var app = express();
    var log = 0
    var myLogger = function (req, res, next) {
        log++;
        console.log('var log =', log);
        next();
    };
    
    app.use(myLogger);
    
    app.get('/', function(req, res){
        res.send("hello world");
    });
    
    app.listen(3000);

    result:

    C:UsersadminWebstormProjectslearning-express-step5>node learning-express-step5.js
    var log = 1
    var log = 2
    var log = 3
    var log = 4

    request time log:

    var express = require('express');
    var app = express();
    var log = 0
    var myLogger = function (req, res, next) {
        log++;
        console.log('var log =', log);
        next();
    };
    
    var requestTime = function(req, res, next){
        req.requestTime = Date.now();
        next();
    }
    
    app.use(myLogger);
    app.use(requestTime);
    
    app.get('/', function(req, res){
        //res.send("hello world");
        var responseText = 'hello world!<br>';
        responseText +='<small>Requested at: ' + req.requestTime + '</small>'
        res.send(responseText);
    });

    result:

    write middleware

    var express = require('express');
    var app = express();
    var mw = require('./my-middleware');
    
    var log = 0;
    var myLogger = function (req, res, next) {
        log++;
        console.log('var log =', log);
        next();
    };
    
    var requestTime = function(req, res, next){
        req.requestTime = Date.now();
        next();
    }
    
    app.use(myLogger);
    app.use(requestTime);
    app.use(mw({option1:'1',option2:'2'}));
    
    app.get('/', function(req, res){
        //res.send("hello world");
        var responseText = 'hello world!<br>';
        responseText +='<small>Requested at: ' + req.requestTime + '</small>'
        res.send(responseText);
    });
    
    app.listen(3000);
    

      my-middleware.js  each request print log option1 and option2

    module.exports = function (options) {
        return function (req, res, next) {
            console.log(options.option1);
            console.log(options.option2);
            next()
        }

    result:

    C:UsersadminWebstormProjectslearning-express-step5>node learning-express-step5.js
    var log = 1
    1
    2
    var log = 2
    1
    2
    var log = 3
    1
    2
  • 相关阅读:
    luogu P1451 求细胞数量
    P1443 马的遍历
    luogu P1194 买礼物
    codevs 4919 线段树练习4
    printf的实型
    printf的整型
    scanf
    printf
    c++常用函数
    字符类型C++(ascll码表)
  • 原文地址:https://www.cnblogs.com/lianghong881018/p/11010683.html
Copyright © 2011-2022 走看看