使用axios的post请求,node.js后台接收不到参数解决方法

简单说明一下,最近在写个人网站的后台管理系统,前端界面使用的是Vue框架,后台使用的是Node.js。

因为后台管理系统有登录,所以在写的时候发现一个小问题,因为以前没有登录,所以用的都是get请求,后台一直用的是req.query接收参数,但是post请求完成之后,req.query是一个空对象,req.params也是空对象,接收不到参数。

前台请求成功。

使用axios的post请求,node.js后台接收不到参数解决方法_第1张图片

使用axios的post请求,node.js后台接收不到参数解决方法_第2张图片

后台接收成功。

使用axios的post请求,node.js后台接收不到参数解决方法_第3张图片

当然最先开始的也就是网上各个搜索引擎各种搜,前端尝试过URLSearchParams方法,application/x-www-form-urlencoded方法以及Qs.stringify方法。但是都没有什么用,感觉还是获取不到参数。

解决方法-------后台req.on('data')方法

幸好还是解决了,前端不操作,后台使用req.on('data')接收参数可以解决。上代码。

使用axios的post请求,node.js后台接收不到参数解决方法_第4张图片

使用axios的post请求,node.js后台接收不到参数解决方法_第5张图片

当然,这是一种方法,还可以使用req.body,不过要载入body-parser中间件。

其实上面主要原因在于req.query和req.params只能接收到get请求的参数。所以post请求要使用其他的接收参数方式,比如我使用的req.on("data"),或者使用上面提到过的req.body。

哈哈哈哈~……~

 

你可能感兴趣的:(Vue.js,vue,vue.js,axios,post,node.js)