node.js自定义中间件

导读:本篇文章讲解 node.js自定义中间件,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

const experss = require('express');
const timestamp = require('time-stamp');
const app = experss();
app.listen(3000, () => {
    console.log(`web服务器工作在3000端口`);
});
// let obj = {};
// obj.x = 11;
// console.log(obj);
//req:request请求对象
//res:response响应对象
//next:next()为方法
function getCurTimes(req, res, next) {
    // console.log(req, res, 222);
    // console.log(next, 1111);
    if (1) { //正常
        let curtimes = timestamp('YYYY-MM-DD HH:mm:ss');
        req.tiems = curtimes;
        res.t = curtimes;
        // console.log(curtimes, 999);
        next(); //next()方法查找并执行后面能匹配上的路由
    } else { //异常
        next('这是错误信息');
    }
}
function myDemo(req, res, next) {
    console.log('Hello web');
    next();
}
//使用中间件语法:
app.use(getCurTimes);
// app.use(myDemo);
//老师界面:
app.get('/teacher', (req, res) => {
    res.send(`这是老师的界面:${req.tiems} ${res.t}`);
});
// app.use(getCurTimes);
//学生界面:
app.get('/student', (req, res) => {
    res.send(`学生界面:${req.tiems}`);
});
//逻辑错误处理中间件:
function proErrors(err, req, res, next) {
    console.log(err, 1111);
    //  fs.writeFileSync(path.join(__dirname,'err.log'));
    res.send(`出错了:${err}`);
}
app.use(proErrors);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/4904.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!