共同点:两者皆是属于node.js获取参数的方法
区别点:
req.query用来获取get方法传递的参数
req.body用来获取post方法传递的参数,req.body需要借助第三方插件body-parser来配置
配置body-parser插件:

const express = require('express');
const bodyParser = require('body-parser');
const app = express();
//传递头信息application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({extended:false}))
//传递头信息
app.use(bodyParser.json());

案例:

const express = require("express");
const path = require("path");
const bodyParser = require("body-parser");
const app = express();
//配置静态文件路径
app.use(express.static(path.join(__dirname, "public")));
app.use(bodyParser.urlencoded({ extended: false }));
app.get("/get", (req, res) => {res.send(req.query);console.log(req.query);console.log(req.body)//输出为空
});
app.post("/post", (req, res) => {res.send(req.body);console.log(req.body);console.log(req.query)//输出为空
});
app.listen(3000);
console.log("服务器启动成功");

前端代码:

 const btn = document.querySelector("#btn");const username = document.querySelector("#username");const age = document.querySelector("#age");btn.onclick = function () {const xhr = new XMLHttpRequest();let nameValue = username.value;let ageValue = age.value;//拼接请求参数let params = "username=" + nameValue + "&age=" + ageValue;xhr.open("post", "http://localhost:3000/post");xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr.send(params);xhr.onload = function () {console.log(JSON.parse(xhr.responseText));};};

req.query和req.body的区别相关推荐

  1. Express中带有参数的路由请求req.query、req.body、req.params

    我们的需求是:我们循环遍历出所有用户和密码,我们打算点击删除之后将对应的ID作为参数传输到对应的路由,处理之后,地址重定向也就是页面刷新,数据重新显示. 前端代码: <table border= ...

  2. req.query和req.body区别

    req.query 该属性主要用于get()方法时传递参数使用,用法很简单,直接获取地址栏传递的参数:例如: //引入依赖 var express = require('express'); /*va ...

  3. node js中的req.body,req.query,req.params取参数

    1.原生node中怎么获取get/post请求参数 1.1 处理get请求参数 使用node自带的核心模块----url模块 url.parse();方法将一个完整的URL地址,分为很多部分,常用的有 ...

  4. req请求的参数req.params - req.query - req.body

    动态参数 req.params nodejs默认提供,无需载入其他中间件 使用 req.params.id就可以获取到前端传递来的参数. 该对象默认为{}app.get("/api/:id& ...

  5. node中req.params,req.query,req.body三者的区别

    req.params,req.query,req.body三者经常容易弄混,今天就记录一下三者的区别. req.params,req.query是用在get请求当中,而req.body是用在post请 ...

  6. express中req请求,取参数的三种方法 req.params req.query req.body区别

    基本使用 const request = require('request') 引入这个包就可以开始使用了,最简单的使用方式就是 request(url) 就可以想指定的地址发起一个 get 请求. ...

  7. nodejs的req取参req.body,req.params,req.query

    1/req.query: Get:/domo?name=ximiximi&blog=https://home.cnblogs.com/u/ximiximi-blog/ app.get('/do ...

  8. 【Node.js】中req.params,req.query,req.body

    GET请求的参数在URL中,在原生Node中,需要使用url模块来识别参数字符串.在Express中,不需要使用url模块了.可以直接使用req.query对象. POST请求的参数解析必须使用bod ...

  9. node中req.params,req.query,req.body

    req.params 由nodejs默认提供,无需载入其他中间件.nodejs中动态获取参数,一般是get请求,不改变地址,在前端异步调用接口传参数用的 app.get("/api/:key ...

最新文章

  1. JS 中如何判断 undefined 和 null
  2. 【计算理论】计算复杂性 ( coNP 问题 | coNP 完全 | P、NP、coNP 相互关系 )
  3. influx生产部署重要配置
  4. PHP婚庆网站论文,jsp婚庆网站
  5. 每日top3热点搜索词统计案例
  6. JavaFX技巧14:StackPane子项-隐藏但不消失
  7. 在高并发情况nginx的作用
  8. 中国大妈也不带钱包了!支付宝春节60后境外支付人数增长130%
  9. css grid随页面大小_前端开发中各种设置CSS间距的优点缺点及实例「实践」
  10. Eclipse“ctrl+左键”链到实现类
  11. 三层交换机LACP协议对 L2/L3端口,报文处理实验
  12. matlab热度图确定色标_MATLAB 颜色图函数(imagesc/scatter/polarPcolor/pcolor)
  13. 2018浙江大华股份有限公司-高级C/C++软件开发工程师面试准备
  14. Echarts legend组件 图例默认选中状态
  15. 【eNSP 华为模拟器】三层交换技术及操作步骤【图文】
  16. Hinton论文系列-Reducing the dimensionality of data with neural networks
  17. 低代码、高敏捷的智和网管平台,运维平台二次开发极简化
  18. 视频会议行业应用软件分析
  19. (转)FFmpeg 基本用法
  20. SQL数据库损坏及恢复分析

热门文章

  1. 涨价或对新能源汽车造成新一轮打击,促使消费者选购燃油车
  2. 【机器学习与深度学习理论要点】15. 什么是决策树?决策树的特点及使用情况
  3. Fastcgi、CGI 是什么及区别
  4. SDRAM单字节读写仿真测试
  5. Java原来可以这么玩!CV视频合成处理,制作2宫格、4宫格、多宫格的视频
  6. fsQCA操作步骤简单版
  7. 备战金三银四软件测试面试刷题小程序,错过你会后悔的
  8. 聚宽 get_price 多个股票数据_聚宽量化一个命令获取全部股票全部的财务报表数据...
  9. 第三课 MC9S08DZ60之通用输出输入GPIO
  10. Spring4 快速入门 1