zoukankan      html  css  js  c++  java
  • node.js获取参数的常用方法

    1、req.body

    2、req.query

    3、req.params

    一、req.body例子

      body不是nodejs默认提供的,你需要载入body-parser中间件才可以使用req.body,这个方法通常用来解析POST请求中的数据

    <form action='/test' method='post'> 
        <input type='text' name='name' value='lmw'> 
        <input type='text' name='tel' value='1234567'> 
        <input type='submit' value='Submit'> 
    </form>
    app.post('/test', function(req, res) {
        console.log(req.body.name);
        console.log(req.body.tel);
    });

    二、req.query例子

      有nodejs默认提供,无需载入中间件,这个方法通常用来解析get请求中的数据

    GET /test?name=lmw&tel=123456789
    
    app.get('/test', function(req, res) {
        console.log(req.query.name);
        console.log(req.query.tel);
    });

    三、req.query和req.body同时使有

    <form action='/test?id=1' method='post'> 
        <input type='text' name='name' value='lmw'> 
        <input type='text' name='tel' value='123456789'> 
        <input type='submit' value='Submit'> 
    </form>
    app.post('/test', function(req, res) {
        console.log(req.query.id);
        console.log(req.body.name);
        console.log(req.body.tel);
    });

    四、req.params

    另一种方法传递参数给服务器,但是这不算是传统标准规范的做法,是属于 HTTP Routing 的延伸应用

    GET /test/lmw/123456789
    
    app.get('/test/:name/:tel', function(req, res) {
        console.log(req.params.name);
        console.log(req.params.tel);
    });

     总结:

    • req.query: 解析后的 url 中的 querystring,如 ?name=haha,req.query 的值为 {name: 'haha'}
    • req.params: 解析 url 中的占位符,如 /:name,访问 /haha,req.params 的值为 {name: 'haha'}
    • req.body: 解析后请求体,需使用相关的模块,如 body-parser,请求体为 {"name": "haha"},则 req.body 为 {name: 'haha'}

     欢迎加入大前端交流群!群号:277942610,VIP新群

  • 相关阅读:
    OpenFileDialog 类的ShowDialog() 错误的解决
    DataTable.Select()使用心得
    postgis 自相交数据检测 修复
    postgresql 添加列主键自增
    postgresql 死锁处理
    linux 安装中文字体(生成图片中文乱码解决)
    Dockerfile 部署jar
    SpringBoot学习总结文章
    怎样在Linux服务器上部署自己的项目?(超详细)
    关于连接Redis时Could not get a resource from the pool问题
  • 原文地址:https://www.cnblogs.com/liumingwang/p/6904666.html
Copyright © 2011-2022 走看看