nodejs express如何接收POST传递的参数
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传递的参数相关推荐
- H5 跳转Flutter APP问题:在Flutter中解决H5能够打开APP并接收H5传递的参数
最近遇到了这个问题,其实这个问题在源生开发中算是一个很常见的问题.有很多场景都需要通过其他APP或者H5来打开APP并且有时候会携带参数. 所以在这里我说一下我的做法(大神勿喷,有更好的办法请评论区留 ...
- ElementUI中el-upload传递额外参数为date类型时后台SpringBoot接收不到
场景 ElementUI中el-upload怎样上传文件并且传递额外参数给Springboot后台进行接收: https://mp.csdn.net/console/editor/html/10797 ...
- ElementUI中el-upload怎样上传文件并且传递额外参数给Springboot后台进行接收
场景 需要将Excel中的数据导入到数据库中,就会用到文件上传的功能. 这里使用ElementUI的el-upload控件实现文件上传. 注: 博客: https://blog.csdn.net/ba ...
- Spring MVC如何接收浏览器传递来的请求参数--request--形参--实体类封装
阅读目录 1. 通过HttpServletRequest获得请求参数和数据 2. 处理方法形参名==请求参数名 3. 如果形参名跟请求参数名不一样怎么办呢?用@RequestParam注解 4. 用实 ...
- springmvcget中文乱码_解决SpringMVC Controller 接收页面传递的中文参数出现乱码的问题...
新配置一个spring的MVC项目,发现对Get请求的中文参数出现了乱码: 查看了SpingMVC中关于编码的配置(在web.xml中),如下: encodingFilter org.springfr ...
- uniapp App跳转微信小程序并互相传递参数、接收微信小程序传递的参数
本文是uniapp打包成安卓App. 一.注意事项 1.用到了分享功能,在打包App时,需要配置manifest.json:App 模块配置->Share.按照提示填写微信分享的信息,appid ...
- nodejs+express+mysql实现图片上传
nodejs+express+multer+ajax上传图片到服务器端,以及将图片路径保存到数据库 思路,使用nodejs中的express框架搭建好服务器,创建上传图片的路由,在工作目录中划分好服务 ...
- windows下nodejs express安装及入门网站,视频资料,开源项目介绍
windows下nodejs express安装及入门网站,视频资料,开源项目介绍,pm2,supervisor,npm,Pomelo,Grunt安装使用注意事项等总结 第一步:下载安装文件 下载地址 ...
- 复盘《新冠疫苗在线预约系统》设计过程Nodejs+express+Mysql+前端
新冠疫苗预约 使用的技术:nodejs +express +Mysql +html+bootstrap 运行环境:vscode 1. 项目的搭建 检验node环境 确认是否安装node express ...
最新文章
- assembly x86(nasm)串比较
- 勾股定理·圓周率·無窮級數·微積分
- 【转】github中origin和upstream的区别
- CAE所表示的计算机术语是,计算机应用中,英文缩略语CAE所表示的计算机术语是()。...
- java 拦截指定jsp_详解Struts2中对未登录jsp页面实现拦截功能
- LINUX SHELL 中if的使用
- Xshell上传文件到linux服务器
- C4D景深与运动模糊及hdr预设文件添加技巧
- 《深度学习:21 天实战 Caffe》资源已上传至码云、github
- 火狐Android 附加组件,Android版Firefox 85允许AMO安装附加组件
- 2022腾讯云双十一服务器价格出炉来看看便宜不
- 配置使用consol口和网线登录交换机
- rectpuls函数 matlab,Matlab中的rectpuls函数解析
- 如何在linux中备份文件
- 高德坐标系转天地图坐标系(GCJ02转WGS坐标系)
- 【MATLAB】理解采样频率和信号频率的关系
- TensorRT 4 基本介绍及TensorFlow模型转化Uff格式导入(二)
- 机器学习与公共传播、舆情检测的研究总结
- Python学习笔记 | opencv图像处理(一)
- centos7 ceph 集群部署