码迷,mamicode.com
首页 > 其他好文 > 详细

Express请求处理管线 随笔

时间:2016-09-02 20:24:17      阅读:372      评论:0      收藏:0      [点我收藏+]

标签:

const   exp = require(express),
        app = exp()

function utf8(req, res, next){
    // res.set()设置响应头,
    // 还可以写成res.set({})批量设置响应头
    // 在Content-Type响应头中设置编码可以解决乱码问题
    res.set(Content-Type, text/html; charset=utf-8)
    
    console.log(设置字符编码)
    
    // 将请求交给下一个函数处理
    next()
}

function first(req, res, next){
    console.log(我是第一个处理请求的函数)
    next()
}

function second(req, res, next){
    console.log(我是第2个处理请求的函数)
    next()
}

function third(req, res, next){
    console.log(我是第3个处理请求的函数)
    next()
}

app.get(/, third, first, second, (req, res) => {
    res.end(我是最后一个处理请求函数)
})


// 中间部分还可以写成数组
// app.get(‘/‘, [utf8, first, second, third], (req, res) => {
//     res.end(‘我是最后一个处理请求函数‘)
// })

app.get(/hi/:age, utf8, first, second, third, (req, res) => {
    var name = req.query.name
    var age = req.params.age
    
    // 获取客户端数据:
    // 1、获取url中的querystring(?后面的name=value,通过GET方法发送)
    //     req.query.name
    // 2、获取请求体中的数据(通过POST方法发送,有多种编码方式)
    //     req.body.name
    //     如果是 urlencoded 编码需要使用 body-parser 模块
    //     如果是 multipart/form-data 需要使用 multer 模块
    // 3、获取cookie中的数据
    //     req.cookies.name
    //     需要使用 cookie-parser 模块
    // 4、获取请求头中的数据
    //     req.get(‘name‘)
    // 5、获取url路径Path中的数据
    //     req.params.age
    //     需要设置请求地址模式   ‘/hi/:age‘
    
    // 将参数放入Path相对于将参数放入QueryString
    // 更加容易被人和搜索引擎识别
    // 因此被称为友好URL,friendly url   
    res.end(`你好${name}, ${age},很高兴认识你`)
})

app.listen(3000, () => console.log(正在运行...))

 


Administrator@HJL MINGW64 ~/Desktop/Express请求处理管线和友好URL
$ node server
正在运行...
我是第3个处理请求的函数
我是第一个处理请求的函数
我是第2个处理请求的函数

 

Express请求处理管线 随笔

标签:

原文地址:http://www.cnblogs.com/huangjinliang/p/5835486.html

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!