Vue 设置axios请求格式为form-data的操作步骤


Posted in Javascript onOctober 29, 2019

Cover

Vue 设置axios请求格式为form-data的操作步骤

在Vue中使用axios

这个老生常谈了,还是先记录一遍,方面后面自己查。

!!! 设置form-data请求格式直接翻到后面看。

1. 安装axios

在项目下执行npm install axios。

之后在main.js中,添加:

import axios from 'axios' //引入

//Vue.use(axios) axios不能用use 只能修改原型链 
Vue.prototype.$axios = axios

2. 发送GET请求

axios封装了get方法,传入请求地址和请求参数,就可以了,同样支持Promise。

//不带参数的get请求

let url = "..."
this.$axios.get(url)
.then((res) => {
 console.log(res) //返回的数据
})
.catch((err) => {
 console.log(err) //错误信息
})

不过它的参数需要写在params属性下,也就是:

//带参数的get请求

let url = "...getById"
this.$axios.get(url, {
 params: {
  id: 1
 }
})
.then((res) => {
 console.log(res) //返回的数据
})
.catch((err) => {
 console.log(err) //错误信息
})

2. 发送post请求

与上面相同,就是参数不需要写在params属性下了,即:

//带参数的post请求

let url = "...getById"
let data = {
 id: 1
}

this.$axios.post(url, data)
.then((res) => {
 console.log(res) //返回的数据
})
.catch((err) => {
 console.log(err) //错误信息
})

3. 经典写法

axios也可以用jQ的写法,不过回调函数还是Promise的写法,如:

this.$axios({
 method: 'post',
 url: '...',
 data: {
 firstName: 'Fred',
 lastName: 'Flintstone'
 }
}).then((res) => {
 console.log(res)
})

设置form-data请求格式

我用默认的post方法发送数据的时候发现后端获取不到数据,然而在network中看到参数是的确传出去的了。而且用postman测试的时候也是可以的,比较了下两个的不同发现是postman使用的是form-data格式,于是用form-data格式再次请求,发现OJBK

在查找设置请求格式的时候花了点时间,网上的方案有好几个,这个我亲测成功,发上来。

import axios from "axios" //引入

//设置axios为form-data
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.headers.get['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.transformRequest = [function (data) {
 let ret = ''
 for (let it in data) {
  ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&'
 }
 return ret
}]


//然后再修改原型链
Vue.prototype.$axios = axios

以上这篇Vue 设置axios请求格式为form-data的操作步骤就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript的事件描述
Sep 08 Javascript
js 获取浏览器高度和宽度值(多浏览器)
Sep 02 Javascript
jQuery焦点图切换特效插件封装实例
Aug 18 Javascript
浅谈javascript的调试
Jan 28 Javascript
省市区三级联动jquery实现代码
Apr 15 Javascript
vue2.0使用Sortable.js实现的拖拽功能示例
Feb 21 Javascript
详解vue.js 开发环境搭建最简单攻略
Jun 12 Javascript
echarts学习笔记之图表自适应问题详解
Nov 22 Javascript
Angular简单验证功能示例
Dec 22 Javascript
JS+CSS实现滚动数字时钟效果
Dec 25 Javascript
VUE 3D轮播图封装实现方法
Jul 03 Javascript
Vue与Node.js通过socket.io通信的示例代码
Jul 25 Javascript
js单线程的本质 Event Loop解析
Oct 29 #Javascript
解决axios post 后端无法接收数据的问题
Oct 29 #Javascript
使用axios请求接口,几种content-type的区别详解
Oct 29 #Javascript
vue+elementui 对话框取消 表单验证重置示例
Oct 29 #Javascript
vue实现路由监听和参数监听
Oct 29 #Javascript
基于axios 的responseType类型的设置方法
Oct 29 #Javascript
关于vue2强制刷新,解决页面不会重新渲染的问题
Oct 29 #Javascript
You might like
php 去除html标记--strip_tags与htmlspecialchars的区别详解
2013/06/26 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
CodeIgniter采用config控制的多语言实现根据浏览器语言自动转换功能
2014/07/18 PHP
又一个PHP实现的冒泡排序算法分享
2014/08/21 PHP
PHP+redis实现添加处理投票的方法
2015/11/14 PHP
php发送http请求的常用方法分析
2016/11/08 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
javascript中interval与setTimeOut的区别示例介绍
2014/03/14 Javascript
js使用html()或text()方法获取设置p标签的显示的值
2014/08/01 Javascript
js下拉选择框与输入框联动实现添加选中值到输入框的方法
2015/08/17 Javascript
jQuery ajaxSubmit 实现ajax提交表单局部刷新
2016/07/04 Javascript
Angular客户端请求Rest服务跨域问题的解决方法
2017/09/19 Javascript
js实现关闭网页出现是否离开提示
2017/12/07 Javascript
web前端vue实现插值文本和输出原始html
2018/01/19 Javascript
vue-以文件流-blob-的形式-下载-导出文件操作
2020/08/07 Javascript
[03:11]2014DOTA2国际邀请赛-VG掉入败者组 独家专访357
2014/07/19 DOTA
Python3 main函数使用sys.argv传入多个参数的实现
2019/12/25 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
PyQt5实现简单的计算器
2020/05/30 Python
15个Pythonic的代码示例(值得收藏)
2020/10/29 Python
基于Modernizr 让网站进行优雅降级的分析
2013/04/21 HTML / CSS
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2013/03/30 面试题
机电专业毕业生推荐信
2013/11/10 职场文书
护士自荐信范文
2013/12/15 职场文书
六五普法规划实施方案
2014/03/21 职场文书
群众路线党员自我评议范文2014
2014/09/24 职场文书
民主评议党员自我评议范文2014
2014/09/26 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
预备党员自我评价范文
2015/03/04 职场文书
欢送会主持词
2015/07/01 职场文书
《西游记》读后感(3篇)
2019/09/20 职场文书
Golang 编译成DLL文件的操作
2021/05/06 Golang
如何使用flask将模型部署为服务
2021/05/13 Python
win10键盘驱动怎么修复?Win10键盘驱动修复小技巧
2022/04/06 数码科技
js前端设计模式优化50%表单校验代码示例
2022/06/21 Javascript