后端获取不到axios.post提交的参数
后端获取不到axios.post提交的参数
官网示例是这样的:
# 方式一:直接传入json对象作为参数
axios.post('/user', {firstName: 'Fred',lastName: 'Flintstone'}).then(function (response) {console.log(response);}).catch(function (error) {console.log(error);});# 方式二: 通过属性data指定参数axios({method: 'post',url: '/user/12345',data: {firstName: 'Fred',lastName: 'Flintstone'}
});
项目中的代码最开始参考官网示例编写诶,实现如下:
前端实现:
<script src="js/vuejs-2.5.16.js"></script>
<script src="js/axios-0.18.0.js"></script><script>
axios.post('/user', {"age": 18,"email": "zs@qq.com","name": "张三"
}).then(function (response) {console.log(response);}).catch(function (error) {console.log(error);});
</script>
后端实现:
request.getParameterMap();
request.getParameter("email");
部署运行项目后,发现后端这两个方法获取参数都是为null,后端又不想变更,于是前端想着怎么来解决这个问题。
解决方案:
首先要明白,axios的默认行为:
axios 使用 post 发送数据时,默认是直接把 json 放到请求体中提交到后端的。
所以它是将 Content-Type
改成了 application/json;charset=utf-8
,后端获取参数可能拿不到。
这时候,需要使用到 Qs模块了, 借助Qs模块来序列化前端的json对象,使之成为name=张三&age=18&email=zs@qq.com
的形式提交:。
具体用法:
Qs.stringify(json对象)
引入Qs.js模块:
<script src="js/vuejs-2.5.16.js"></script>
<script src="js/axios-0.18.0.js"></script>
<!-- 引入Qs模块 -->
<script src="js/qs.js"></script><script>
var obj = {"name":"张三", "age":18,"email":"zs@qq.com"};
var paramStr = Qs.stringify(obj);
console.log(paramStr); // name=张三&age=18&email=zs@qq.comaxios({method: 'post',url: '/user',data: Qs.stringify(obj)
})
</script>
重新运行项目,后端通过request.getParameterMap()或者request.getParameter(“参数名”) 都可以获得请求参数了。
当然,熬得过后端德华,让他们改也是可以的。后端可以直接拿到json传转换成对象也是ok的。
后端获取不到axios.post提交的参数相关推荐
- 使用axios post 提交数据,后台获取不到提交的数据解决方案
使用axios post 提交数据,后台获取不到提交的数据解决方案 参考文章: (1)使用axios post 提交数据,后台获取不到提交的数据解决方案 (2)https://www.cnblogs. ...
- 前后端交互ajax和axios入门讲解,以及http与服务器基础
ajax和http小白入门,客户端与服务器基础讲解,前后端交互(从入门到实践详细解析) 文章目录 ajax和http小白入门,客户端与服务器基础讲解,前后端交互(从入门到实践详细解析) 前言 一.Aj ...
- router中获取vuex_Vue 中 Axios 的封装和 API 接口的管理
(给JavaScript加星标,提升前端技能) 作者:愣锤 https://juejin.im/post/684490365288107214 如图,面对一团糟代码的你~~~真的想说,What F~U ...
- vue 通过从后端获取的文件地址将excel文件下载到本地
方法很简单,地址一定要正确 可以先自己在百度上找个免费能下载的文件进行测试,如果百度文档的下载地址能成功实现,那前端就没问题了 1. 用a标签 这个很重要的一点是,给的下载地址一定一定要正确,要能下载 ...
- js ajax传对象数组参数,JS传递对象数组为参数给后端,后端获取
JS传递对象数组为参数给后端,后端获取. 前端JS代码: var conditons = []; var test1 = new Object(); test1.name="1"; ...
- 从后端获取数据然后在页面处理技巧
实例技巧分析: // 从后端获取数据 entity ,先给默认值为空对象//假设 我们从后端获取到 entity 传递进来,这个时候 entity 里面有二个数据 statusPassTime 和 c ...
- jsp调用struts,jsp调用action,action获取表单提交的参数
自定义action类.LgqAction: @Component @Scope(value="prototype") public class LgqAction { ...
- java后端获取客户端(用户)真实ip,原理
java后端获取客户端真实ip,原理: 一般都是下面代码中的做法:但很多人只知道这样能拿到,稍微有改动就不知道怎么办了 看看网上的各种说法,接下来容我一一讲解,如有纰漏,敬请指正. public st ...
- java后端获取时间
前言 我们在后端开发过程中,会遇到需要获取当前时间.昨日时间的情况,下面是在后端获取时间的方法 Java后端获取时间 Calendar ca = Calendar.getInstance(); Sim ...
最新文章
- python读取excel-蜗牛笔记-文章-Python读取Excel文件
- 使用JavaScript代码制作99乘法表
- 中国计算机学会CCF推荐国际学术会议和期刊目录-人机交互与普适计算
- 2021算法竞赛入门班第三节课【堆、栈、队列、并查集】等习题
- REVERSE-PRACTICE-JarvisOJ-2
- 华科计算机考研复试机试【零散大汇总】
- swift加密_如何使用Swift和Laravel创建加密跟踪应用程序的后端
- Docker教程:dokcer machine的概念和安装
- gcc 混合连接动态库和静态库
- 映象劫持使部分程序不可运行的解决方法
- 搭建以图搜图检索系统
- 使用Texmacs帮助您写格式规范统一的BLOG
- 如何设置虚拟机访问外网
- VM虚拟机ssh免密登录其他主机
- 【郭东白架构课 模块一:生存法则】05|法则二:研发人员的人性需求是如何影响架构活动成败的?
- 保利紫山开启湛江城市墅居新纪元
- 消息队列应用与原理剖析
- 总结下我两个移动硬盘坏掉的经历...
- Live800:全渠道智能客服系统,助力企业打造全渠道客户中心
- Virgo与Maven整合开发环境搭建(四)
热门文章
- (转)Cognos Transformer IQD文件结构及规则
- 【搬家】【数据库】【优化】SQL 优化学习小结——索引和语句优化
- 对无迹卡尔曼滤波(UKF)和粒子滤波(PF)的理解
- 基础篇 | 15 C++ 科学计算 - OpenBLAS的安装与使用
- MySQL 开启大页内存
- 郑州大学计算机科学系院长 李,2018年英才计划专家咨询委员会郑州大学调研座谈会圆满举办...
- oracle分区维护操作不能与其他,ORA-14048:分区维护操作不能与其它操作组合
- 微信会员卡开发之微信公众平台的基本配置
- c语言 floyd优化,Floyd(弗洛伊德)算法(C语言)
- ZOJ 1036: 算菜价