1. nodejs express接收POST参数的问题

通过CURL或者POSTMAN工具向后台服务发送POST请求时,nodejs express无法获得相关参数,req.body是undefined,查询各种资料,多数是简单说设置 bodyParser.json()或者bodyParser.urlencoded({ extended: false }),但均没有完整说明,现整理如下:

2. 解决办法

(1)在路由页面文件引入body-parser

var bodyParser = require(‘body-parser’);

// create application/json parser
var jsonParser = bodyParser.json();

// create application/x-www-form-urlencoded parser
var urlencodedParser = bodyParser.urlencoded({ extended: false });

(2)在POST路由处理函数中使用body-parser

根据客户端传输参数格式选择不同接收方式,比如:
接收 x-www-form-urlencoded 参数:“name=xxx&mobile=133897”
router.post(’/add’, urlencodedParser, function(req,res) {
console.log(req.body);
}

接收 json 参数:{“name”:“xxx”,“mobile”:“133897”}
router.post(’/add’, jsonParser , function(req,res) {
console.log(req.body);
}

3. 测试方法

(1)CURL工具

curl -X POST -H “Content-Type: application/x-www-form-urlencoded” -d “name=xxx&mobile=133897” http://192.168.250.128:9090/api/cycloper/add

curl -X POST -H “Content-Type: application/json” -d {“name”:“xxx”,“mobile”:“133897”} http://192.168.250.128:9090/api/cycloper/add

(2)POSTMAN插件

POST /api/cycloper/add HTTP/1.1
Host: 192.168.250.128:9090
Cache-Control: no-cache
Content-Type: application/x-www-form-urlencoded
name=xxx&mobile=133897
POST /api/cycloper/add HTTP/1.1
Host: 192.168.250.128:9090
Content-Type: application/json
Cache-Control: no-cache

{“name”:“xxxx”,“mobile”:“133897”}

nodejs express如何接收POST传递的参数相关推荐

  1. H5 跳转Flutter APP问题:在Flutter中解决H5能够打开APP并接收H5传递的参数

    最近遇到了这个问题,其实这个问题在源生开发中算是一个很常见的问题.有很多场景都需要通过其他APP或者H5来打开APP并且有时候会携带参数. 所以在这里我说一下我的做法(大神勿喷,有更好的办法请评论区留 ...

  2. ElementUI中el-upload传递额外参数为date类型时后台SpringBoot接收不到

    场景 ElementUI中el-upload怎样上传文件并且传递额外参数给Springboot后台进行接收: https://mp.csdn.net/console/editor/html/10797 ...

  3. ElementUI中el-upload怎样上传文件并且传递额外参数给Springboot后台进行接收

    场景 需要将Excel中的数据导入到数据库中,就会用到文件上传的功能. 这里使用ElementUI的el-upload控件实现文件上传. 注: 博客: https://blog.csdn.net/ba ...

  4. Spring MVC如何接收浏览器传递来的请求参数--request--形参--实体类封装

    阅读目录 1. 通过HttpServletRequest获得请求参数和数据 2. 处理方法形参名==请求参数名 3. 如果形参名跟请求参数名不一样怎么办呢?用@RequestParam注解 4. 用实 ...

  5. springmvcget中文乱码_解决SpringMVC Controller 接收页面传递的中文参数出现乱码的问题...

    新配置一个spring的MVC项目,发现对Get请求的中文参数出现了乱码: 查看了SpingMVC中关于编码的配置(在web.xml中),如下: encodingFilter org.springfr ...

  6. uniapp App跳转微信小程序并互相传递参数、接收微信小程序传递的参数

    本文是uniapp打包成安卓App. 一.注意事项 1.用到了分享功能,在打包App时,需要配置manifest.json:App 模块配置->Share.按照提示填写微信分享的信息,appid ...

  7. nodejs+express+mysql实现图片上传

    nodejs+express+multer+ajax上传图片到服务器端,以及将图片路径保存到数据库 思路,使用nodejs中的express框架搭建好服务器,创建上传图片的路由,在工作目录中划分好服务 ...

  8. windows下nodejs express安装及入门网站,视频资料,开源项目介绍

    windows下nodejs express安装及入门网站,视频资料,开源项目介绍,pm2,supervisor,npm,Pomelo,Grunt安装使用注意事项等总结 第一步:下载安装文件 下载地址 ...

  9. 复盘《新冠疫苗在线预约系统》设计过程Nodejs+express+Mysql+前端

    新冠疫苗预约 使用的技术:nodejs +express +Mysql +html+bootstrap 运行环境:vscode 1. 项目的搭建 检验node环境 确认是否安装node express ...

最新文章

  1. assembly x86(nasm)串比较
  2. 勾股定理·圓周率·無窮級數·微積分
  3. 【转】github中origin和upstream的区别
  4. CAE所表示的计算机术语是,计算机应用中,英文缩略语CAE所表示的计算机术语是()。...
  5. java 拦截指定jsp_详解Struts2中对未登录jsp页面实现拦截功能
  6. LINUX SHELL 中if的使用
  7. Xshell上传文件到linux服务器
  8. C4D景深与运动模糊及hdr预设文件添加技巧
  9. 《深度学习:21 天实战 Caffe》资源已上传至码云、github
  10. 火狐Android 附加组件,Android版Firefox 85允许AMO安装附加组件
  11. 2022腾讯云双十一服务器价格出炉来看看便宜不
  12. 配置使用consol口和网线登录交换机
  13. rectpuls函数 matlab,Matlab中的rectpuls函数解析
  14. 如何在linux中备份文件
  15. 高德坐标系转天地图坐标系(GCJ02转WGS坐标系)
  16. 【MATLAB】理解采样频率和信号频率的关系
  17. TensorRT 4 基本介绍及TensorFlow模型转化Uff格式导入(二)
  18. 机器学习与公共传播、舆情检测的研究总结
  19. Python学习笔记 | opencv图像处理(一)
  20. centos7 ceph 集群部署

热门文章

  1. shell 免杀aspx_Webshell免杀
  2. gradle 7.2.0以上版本配置 不同model资源文件不通用的问题
  3. Mongodb 腾讯云部署
  4. 【图论——第一讲】图论基础以及图的储存
  5. .Net 日志系统-NLog
  6. 吃遍三亚美食 献给在三亚上学工作旅游的朋友们
  7. 【时事观察】找寻城市发展的幸福之路
  8. oracle查找某一天的数据,oracle统计时间段内每一天的数据(推荐)
  9. avue 时间选择器限制时间范围
  10. 一行代码玩转“微信表情”