vue发送ajax --axios入门介绍


vue是不支持发送ajax请求的,所以需要借助axios来完成这个工作。

axios下载地址:https://github.com/mzabriskie/axios


基本用法:
axios([options]);
axios.get(url,[options]);  //get方式传递参数是用过url传递
axios.post(url,data,[options]);  //post方式传递参数通过data属性


注:传参方式区别:

get方式的通过url通过?key=vaule来传参,也可以设置在params属性中。

API案例:

// Make a request for a user with a given ID
axios.get('/user?ID=12345')
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

// Optionally the request above could also be done as
axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
pos请求参数:虽然是模拟表单提交,实际上也是通过Key=Value的方式传递;所以如果你在传递参数的时候使用json格式的传递参数的时候要使用 transformResponse来格式化

API案例:

axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

具体的可以参考AIP。


案例:标准方法

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>axiso发送ajax请求入门</title>
		<script type="text/javascript" src="js/vue.js" ></script>
		<script type="text/javascript" src="js/axios/axios.js" ></script>
		
		<script type="text/javascript">
			window.οnlοad=function(){
				new Vue({
					el:'#main',
					data:{
						
					},
					methods:{
						send:function(){
							axios({
								method:'get',
								url:'testData/studen.json',
							}).then(function(resp){
								console.log(resp.data);
							}).catch(resp=>{
								console.log("发送失败"+resp.status+","+resp.statusText);
							});
						}
					}
				});
			}
		</script>
		
	</head>
	<body>
		
		<div id="main">
			<button type="button" @click="send">发送ajax请求</button>
		</div>
		
	</body>
</html>


json文件:{"Id":"01","Name":"zwc","sex":"男"}

运行结果:


注:使用过jqery 中ajax的类似,反正本质就是xmlHTTPRequest对象。

跨域问题:

  axios本身不支持跨域请求。所以只能使用第三方的库。(解决跨域两种方法:jsonp,CORS

     


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值