本文主要是介绍axios+post+qs 改变上传数据格式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
axios+post+qs 改变数据格式上传
背景
在写项目的时候,有常见的注册登录操作<这是大家都晓得的常识>,然后我就是在写这些简单的东西上,踩坑了.注册成了,登录数据也是传正确了的,但是始终登录不成功.
配上两个图,看上去清晰一些: 一个是注册成功,一个是登录失败.
失败原因
后端要求的application/x-www-form-urlencoded格式,但是axios.$post方法默认的是application/json编码格式,然后后端解析不了.所以一直无法登陆成功!
解决办法
- 下载qs
npm i qs
- 导入qs
import qs from 'qs
- 在post方法中使用qs.stringify() 改变数据的编码格式,这里是把axios.$post默认的
json
格式改成application/x-www-form-urlencoded格式. - 上代码:
// An highlighted block
this.$axios.post("http://8.140.3.126:9527/user/login", qs.stringify({username: this.userForm.username,password: this.userForm.password,})).then((res) => {console.log(res);if (res.data.code == 200) {this.$router.replace("/");}}).catch((err) => {console.log("错误!");})
--------------------------------记录完毕---------------------------------
这篇关于axios+post+qs 改变上传数据格式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!