美文网首页
Node-http(二)

Node-http(二)

作者: zhouhao_180 | 来源:发表于2019-06-11 11:44 被阅读0次

    一、express框架提供三种方法来实现获取请求中的参数:

    req.query 获取到客户端提交到服务器的 查询参数
    req.params 获取到客户端提交到服务器的 查询参数
    req.query、req.params 获取的是地址中的参数,而不是get或post请求参数

    req.body

    1.1、获取参数一
    url格式: http://127.0.0.1:3001/user?id=10&name=zs

    // 请求url:
    const express = require('express')
    const app = express()
    
    // 监听客户端的 get 请求
    app.get('/user', (req, res) => {
        // 服务器,可以直接通过 req.query 属性,获取到客户端提交到服务器的 查询参数
        console.log(req.query)  // 参数组成的对象 { id: "10" , name: "zs"}
        res.send('ok')
    })
    
    app.listen(3001, () => {
        console.log('server running at http://127.0.0.1:3001')
    })
    

    1.2、获取参数二
    Restful格式: http://127.0.0.1:3001/user/11/ls

    // URL 规则中的 : 表示参数项;
    app.get('/user/:id/:name', (req, res) => {
      console.log(req.params)  // 参数组成的对象 { id: "11" , name: "ls"}
      res.send('ok')
    })
    

    二、获取post表单提交的参数

    • 借助于body-parser来解析表单数据
    • 根目录安装: npm i body-parser -S
    • 导入:const bodyParser = require('body-parser')
    • 注册中间件:app.use(bodyParser.urlencoded({ extended: false }))
    • 使用解析的数据: req.body 来访问解析出来的数据
    请求格式
    const express = require('express')
    const bodyParser = require('body-parser')
    const app = express()
    
    // 注册 body-parser 中间件,来解析Post提交过来的表单数据
    app.use(bodyParser.urlencoded({ extended: false }))
    
    // 监听客户端 post 请求
    app.post('/user', (req, res) => {
        // 注意:如果在项目中,想要通过 req.body 获取客户端提交的表单数据,
        // 必须 先注册 body-parser 中间件才可以!
        console.log(req.body) // { name: 'zs', age: '18' }
        res.send('ok')
    })
    
    app.listen(3001, () => {
        console.log('server running at http://127.0.0.1:3001')
    })
    

    相关文章

      网友评论

          本文标题:Node-http(二)

          本文链接:https://www.haomeiwen.com/subject/nyyffctx.html