详解vue使用$http服务端收不到参数


Posted in Javascript onApril 19, 2019

老夫子我正在憋方案书,听到身后传来细软的声音:“李哥,我这有个Bug调了很长时间了,您能帮我看一下吗?”。说这话的是我的好朋友,公司新来的前端小妹伊万卡。我起身向她走去,看到因长时间调试Bug漂亮的脸蛋上泛起的红晕,原来人会变的温柔,一点都不像我。

我使用vue中的http方法异步删除一个图片,后端怎么也接收不到我发的参数,同时还报个500。

听完伊万卡小妹描述的这个Bug临床表现,根据我多年的行医经验,已大体猜出病灶所在。但我并不想这么快结束这次义诊,你们是了解我的,让她透彻的懂了,才是我的选择。
老夫整理下外套,端庄的坐在了小妹的工位上,开始我的治病救人过程:望、闻、问、切。

一:望

在浏览器中把这个功能跑一下,打开调试窗口,找到这个XHR(XMLHttpRequest)请求连接,看Headers选项卡最下面,如下图所示

详解vue使用$http服务端收不到参数

Request Payload,请注意这个数据格式。

二:闻

打开伊万卡小妹写的代码,我终于看出了传说中诗的感觉,同样26个字母,小妹敲出来的就是好看。

this.$vux.confirm.show({
title: "提示",
content: "确定要删除此图片吗?",
onConfirm() {
that.$http({
method: "post",
url: `${that.$$baseURL}/upload/delBelowImg`,
headers: {
token: token,
'Content-Type':'application/json'
},
data:{
file:item.filePath,
id:id,
name:item.name
}
}).then(res => {});
}
});

 我发誓,以上代码绝对出自伊万卡之手,分毫未改。但当这个片段出现在我博文里时屁感觉没有,你说奇怪不奇怪。

三:问

我转头看向写java的川普,说:“小川,把你和伊万卡小妹对接的这个接口,代码发我一下”。5秒中之后,我收到了如下毫无美感的代码。

@RequestMapping(value = "/delBelowImg")
@Transactional
public void delBelowFile(@RequestParam Map<String, Object> params,HttpServletRequest request){
try {
……
} catch (Exception e) {
……
} 
}

@RequestParam 注意这个注解。

四:切

到这里我已经确切的知道了病因,我略作分析,在望环节,我们看到伊万卡小妹诗一样的代码发出请求,在浏览器发送请求参数格式是:
Request Payload,在问环节,看到小川写的代码,注解是@RequestParam,所以结果是,小妹发送的请求数据格式与小川的不统一,怪不得接受不到参数。
我在小妹的代码基础上略作改动如下(标红是改动部分):

const data = {
file:item.filePath,
id:id,
name:item.name
}
this.$vux.confirm.show({
title: "提示",
content: "确定要删除此图片吗?",
onConfirm() {
that.$http({
method: "post",
url: `${that.$$baseURL}/upload/delBelowImg`,
headers: {
token: token,
'Content-Type':'application/json'
},
params:data
}).then(res => {});
}
});

我再次打开浏览器,这次发送参数的格式成了 Query String Parameters,如下图所示

详解vue使用$http服务端收不到参数

服务端成功接受到了参数,图片正常删除,伊万卡小妹脸上又有了笑容,连看我的眼神也更坚定了,好像再说这个男人没错。我知道我们的革命友谊又升华了。我对尹万卡小妹露出了无产阶级标志性笑容?

在伊万卡小妹问出“为什么”三个字时,我赶紧跑回了工位。

Bug是流动的
不由人的
何必激动着要理由

扩展:
有兴趣的同学请自行了解以下异步请求格式区别,要知道前方有个伊万卡小妹妹在等你解答呢,还不滚去学习。
前端:
Request Payload
Form Data
Query String Parameters
后端:
@RequestParam
@RequestBody

以上所述是小编给大家介绍的vue使用$http服务端收不到参数详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js中如何复制一个对象并获取其所有属性和属性对应的值
Oct 24 Javascript
js生成动态表格并为每个单元格添加单击事件的方法
Apr 14 Javascript
JavaScript组件焦点与页内锚点间传值的方法
Feb 02 Javascript
浅谈jQuery.easyui的datebox格式化时间
Jun 25 Javascript
javascript实现鼠标放上后下边对应内容变换的效果
Aug 06 Javascript
基于JavaScript实现动态创建表格和增加表格行数
Dec 20 Javascript
javascript实现图片左右滚动效果【可自动滚动,有左右按钮】
Sep 19 Javascript
关于使用axios的一些心得技巧分享
Jul 02 Javascript
javascript中call()、apply()的区别
Mar 21 Javascript
JS实现提示框跟随鼠标移动
Aug 27 Javascript
javascript实现简单打字游戏
Oct 29 Javascript
详解Vue中的watch和computed
Nov 09 Javascript
ajaxfileupload.js实现上传文件功能
Apr 19 #Javascript
AjaxFileUpload.js实现异步上传文件功能
Apr 19 #Javascript
读懂CommonJS的模块加载
Apr 19 #Javascript
js module大战
Apr 19 #Javascript
如何根据业务封装自己的功能组件
Apr 19 #Javascript
vue项目打包上传github并制作预览链接(pages)
Apr 19 #Javascript
vue组件之间的数据传递方法详解
Apr 19 #Javascript
You might like
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
2013/11/13 PHP
php针对cookie操作的队列操作类实例
2014/12/10 PHP
CentOS6.5 编译安装lnmp环境
2014/12/21 PHP
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
prototype 学习笔记整理
2009/07/17 Javascript
jQuery为iframe的body添加click事件的实现代码
2011/04/07 Javascript
JS链式调用的实现方法
2013/03/07 Javascript
jQuery中.live()方法的用法深入解析
2013/12/30 Javascript
JavaScript中判断原生函数检查function是否是原生代码
2014/09/09 Javascript
详解JavaScript基本类型和引用类型
2015/12/09 Javascript
javascript原型继承工作原理和实例详解
2016/04/07 Javascript
js实现文字截断功能
2016/09/14 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
2017/07/13 Javascript
nodejs body-parser 解析post数据实例
2017/07/26 NodeJs
详解node.js中的npm和webpack配置方法
2018/01/21 Javascript
webgl实现物体描边效果的方法介绍
2019/11/27 Javascript
javascript实现弹出层效果
2019/12/10 Javascript
JavaScript直接调用函数与call调用的区别实例分析
2020/05/22 Javascript
[01:12:53]完美世界DOTA2联赛PWL S2 Forest vs SZ 第一场 11.25
2020/11/26 DOTA
在python的类中动态添加属性与生成对象
2016/09/17 Python
python 调用c语言函数的方法
2017/09/29 Python
NetworkX之Prim算法(实例讲解)
2017/12/22 Python
Python 3.x 判断 dict 是否包含某键值的实例讲解
2018/07/06 Python
python pandas模块基础学习详解
2019/07/03 Python
Tensorflow 卷积的梯度反向传播过程
2020/02/10 Python
解决django xadmin主题不显示和只显示bootstrap2的问题
2020/03/30 Python
python中如何进行连乘计算
2020/05/28 Python
python算的上脚本语言吗
2020/06/22 Python
乐天旅游台湾网站:Rakuten Travel TW
2017/06/01 全球购物
八一演出活动方案
2014/02/03 职场文书
商场消防演习方案
2014/02/12 职场文书
《猫》教学反思
2014/02/26 职场文书
陈欧广告词
2014/03/14 职场文书
2019求职信:应届生求职信范文
2019/04/24 职场文书
人生感悟经典句子
2019/08/20 职场文书