vue中使用axios的请求

本文解析Vue项目中使用Axios时出现的二次请求现象,首次为OPTIONS预检请求,确保跨域能力。文章提供解决方案,包括修改Content-Type及使用qs.stringify处理参数,并介绍Axios的请求方式及为何Vue2.*推荐使用Axios。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为什么会出现一个接口请求两次?第一次是option,第二次是接口请求

问题:在vue项目中使用axios请求数据时,会多发一次类型为options的请求,

产生原因:发第一次是为了验证是否可以跨域

解决方案:在main.js中使用

axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded';

并接传递参数的时候,用

qs.stringify() 将数据处理一下

axios使用put请求方式

1、axios请求方式有哪些?
axios常见传参方式get、post、put、patch、delete
了解更多,点击链接去了解它们的用法:
为什么建议GET、POST、PUT、DELETE各司其职了


2、get请求方式之前我写的博客:axios使用get请求方式的用法


*3、为什么vue2.之后都使用axios?
我们都知道,vue有自己的交互管理机制,vue-resource。但是在vue2.*之后都不会对它维护了,然而我们不能因为没有维护了,就不维护了吧。推荐使用axios。axios的使用方式也相对简单。


4、在对axios配置的时候怎么配置的?
在我们的项目中,将axios下载下来:

$ cnpm install axios --save

打开main.js:

import axios from 'axios'
Vue.prototype.$ajax=axios;//修改Vue的原型属性

在使用的时,

this.$ajax.请求方式(get、put、post、patch、delete)

在本次项目中,我使用时用到的代码结构如下:

				  var formData=new FormData();//创建FormData的对象
			      formData.append('变量参数',变量值);
			    this.$ajax.put(//使用put请求方式
			        'url',     //请求的地址、接口
			         formData,{
			          'headers': {
			            'Content-Type': 'application/x-www-form-urlencoded'    //设置Content-Type的值
			          }
			        }).then(res => {
			        if(条件表达式){
				      //成功时
					}
			       //失败的情况逻辑代码
			    })
		

参考链接:
为什么建议GET、POST、PUT、DELETE各司其职了
axios常见传参方式get/post/put/patch/delete

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值