vue使用axios发送post请求携带json body参数,后端使用@RequestBody进行接收_vue post请求要加@requestbody(1)
最后前端到底应该怎么学才好?
如果你打算靠自己摸索自学,那么你首先要了解学习前端的基本大纲,这是你将要学习的主要内容,理解以及掌握好这些内容,便可以找到一份初级的前端开发工作。你还需要有一套完整的前端学习教程,作为初学者最好的方式就是看视频教程学习,初学者容易理解接受。
不要选择买书学习,这样的方式没有几个人能学会,基本都是看不下去书,也看不懂书。如果喜欢看书的学弟,可以买一些经典的书籍作为辅助即可,主要还是以看教程为主。每天抽出固定几个小时学习,做好长期学习的准备。学习编程并不是每天光看视频,你学习编程最重要的目的是为了编写软件产品,提供给大众使用,所以用手写出代码实现功能才是我们要做的事情。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
// 新增用户信息
saveUserInfo(){
let data = this.ruleForm;
axios.post('http://localhost:9090/user/save',{data},{
headers: {
"Content-Type":"application/json"
},
}).then(res =>{
// 请求成功状态为200说明添加成功
if(res.data.status===200){
// 关闭用户新增表单弹窗
this.dialogFormVisible=false,
// 添加成功提示
this.$message({showClose: true, message: '添加成功!',type: 'success', duration:2000,center:true});
// 重新刷新列表数据
this.queryUserList();
}
}).catch(error =>{
console.log(error)
})
},
发送请求并发现问题
上面代码写完直接运行,直接通过network查看请求
仔细一看好像没有什么问题吧,但是我在后端打了断点,一看,我的数据没了:
解决问题
然后我仔细分析,发现是因为数据的外面报了一层data:{}结构,经过请教圈子里面的大佬,发现问题所在:
就是data被花括号包起来了,去掉即可解决问题!
saveUserInfo(){
// 表单数据
let data = this.ruleForm;
axios.post('http://localhost:9090/user/save',data,{
// json格式
headers: {
"Content-Type":"application/json"
},
},
再次运行,解决问题:
后端也正常接收数据了:
至此问题解决
小插曲
下面是一个小插曲,就是有朋友和我说需要用qs进行转换下表单数据,但是我试过了。和这个参数转换问题无关,
安装qs插件
直接执行命令:
npm install qs
这个包很小哇,安装起来很快的:
引用qs
安装完之后,就可以使用qs了,直接在文件中引用
// 引用qs
import qs from 'qs'
使用qs
引用qs完后,就可以使用它把对象格式化为一个字符串,一行代码即可
// 使用qs对象格式化为一个字符串
qs.stringify(this.ruleForm)
总结
感觉还是挺简单的,但是还是很有必要封装下。
解决问题一定要精确定位,要多尝试,这里引用艾克一句话送给大家:
我宁愿犯错,也不愿什么都不错
文末
我一直觉得技术面试不是考试,考前背背题,发给你一张考卷,答完交卷等通知。
首先,技术面试是一个 认识自己 的过程,知道自己和外面世界的差距。
更重要的是,技术面试是一个双向了解的过程,要让对方发现你的闪光点,同时也要 试图去找到对方的闪光点,因为他以后可能就是你的同事或者领导,所以,面试官问你有什么问题的时候,不要说没有了,要去试图了解他的工作内容、了解这个团队的氛围。
前端面试题汇总
JavaScript
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
性能
linux
前端资料汇总
更多推荐
所有评论(0)