Vue通过axios发送ajax请求基础演示

 更新时间:2023年02月18日 13:45:04   作者:zihanzy  
这篇文章主要介绍了Vue通过axios发送ajax请求基础演示,包括了axios发送简单get请求,axios get传参,axios发送post请求等基础代码演示需要的朋友可以参考下

在Vue中是不支持发送ajax请求的,如果我们要在Vue中发送ajax请求,我们需借助第三方插件
常用发送ajax请求插件有两个 vue-resource和axios,Vue.js 2.0 版本推荐使用 axios 来完成 ajax 请求。

axios项目源码 https://github.com/axios/axios

axios引入方式

npm方式: npm install axios

bower方式 bower install axios

yarn方式 yarn add axios

CDN方式<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>

axios基本使用

axios发送简单get请求

//1.php
<?php
echo 123;
//html

 <div id='app'>
    	<input type="button" @click='get' value='get' name="">
    	<input type="button" @click='post' value='post' name="">
    	<input type="button" @click='jsonp' value='jsonp' name="">
    </div>
//js
<script type="text/javascript">
	var vm = new Vue({
		el:'#app',
		methods:{
			get(){
				axios.get('1.php').then(res=>{
					console.log(res);
				})
			}
		}
	})
</script>

then后面的匿名函数为请求成功的回调函数

打印结果如下

在这里插入图片描述
 

axios get传参

1.直接写在url后面

var vm = new Vue({
		el:'#app',
		methods:{
			get(){
				axios.get('1.php?id=1&name="测试"').then(res=>{
					console.log(res);
				})
			}
		}
	})

2.通过params参数

var vm = new Vue({
		el:'#app',
		methods:{
			get(){
				axios.get('1.php',{params:{
					id:1,
					name:'测试'
				}}).then(res=>{
					console.log(res);
				})
			}
		}
	})

axios发送post请求

axios({
	method: 'post',
	url: '1.php',
	params: {
	firstName: 'Fred',
	lastName: 'Flintstone'
	},
    headers: {
			'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
	},
}).then(function(res){
		console.log(res)
	})

注意:直接使用axiox发送post请求时,会使后端接收不到数据

解决方法如下

一,在发送post请求时我们要手动设置请求头Content-Type:application/x-www-form-urlencoded并且我们将传递参数的属性data换成了params,使用data发送数据,后端接收不到
二,使用data发送数据时,我们可以在数据发送之前进行数据转换转换为key=value&key2=value2…的形式

axios({
	url: '1.php',
	method: 'post',
	data: {
			firstName: 'Fred',
			lastName: 'Flintstone'
	},
	//数据转换
	transformRequest:[data=>{
		let res = ''
		for (let item in data){
				res +=item + "="+data[item]+"&";
		}
		return res;
	 }],
				  
	headers: {
			'Content-Type': 'application/x-www-form-urlencoded'
		}
}).then(function(res){
		console.log(res)
})

以上就是Vue通过axios发送ajax请求基础演示的详细内容,更多关于Vue通过axios发送ajax请求的资料请关注脚本之家其它相关文章!

相关文章

  • vue-element-admin搭建后台管理系统的实现步骤

    vue-element-admin搭建后台管理系统的实现步骤

    本文主要介绍了vue-element-admin搭建后台管理系统的实现步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • Vue和relation-graph库打造高质量的关系图应用程序

    Vue和relation-graph库打造高质量的关系图应用程序

    这篇文章主要介绍了Vue和relation-graph库打造高质量的关系图应用程序,在这篇文章中,我们深入探讨了如何使用Vue和relation-graph高效打造关系图,我们详细介绍了数据准备、关系映射、点击事件等关键步骤,需要的朋友可以参考下
    2023-09-09
  • Vue-cli3.x + axios 跨域方案踩坑指北

    Vue-cli3.x + axios 跨域方案踩坑指北

    这篇文章主要介绍了Vue-cli3.x + axios 跨域方案踩坑指北,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 基于Vue + ElementUI实现可编辑表格及校验

    基于Vue + ElementUI实现可编辑表格及校验

    这篇文章主要给大家介绍了基于Vue + ElementUI 实现可编辑表格及校验,文中有详细的代码讲解和实现思路,讲解的非常详细,有需要的朋友可以参考下
    2023-08-08
  • Vue项目打包压缩的实现(让页面更快响应)

    Vue项目打包压缩的实现(让页面更快响应)

    这篇文章主要介绍了Vue项目打包压缩的实现(让页面更快响应),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • vue无限轮播插件代码实例

    vue无限轮播插件代码实例

    这篇文章主要介绍了vue无限轮播插件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • vue制作toast组件npm包示例代码

    vue制作toast组件npm包示例代码

    这篇文章主要介绍了vue制作一个toast组件npm包,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • 如何测量vue应用运行时的性能

    如何测量vue应用运行时的性能

    这篇文章主要介绍了如何测量vue应用运行时的性能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋友可以参考下
    2019-06-06
  • 详解vue文件中使用echarts.js的两种方式

    详解vue文件中使用echarts.js的两种方式

    这篇文章主要介绍了详解vue文件中使用echarts.js的两种方式,主要介绍了两种使用方式,一种是以组件的形式另一种直接引入,非常具有实用价值,需要的朋友可以参考下
    2018-10-10
  • 遇到vue前端npm i报错多个版本不一致问题及解决

    遇到vue前端npm i报错多个版本不一致问题及解决

    这篇文章主要介绍了遇到vue前端npm i报错多个版本不一致问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03

最新评论