在Vue中如何使用axios跨域访问数据

最近在项目中须要用到axios,因此就恶补一下这个axios究竟是什么东东。越来它是vue-resource的替代品,官网也说了,之后都用axios,vue

vue-resource不在维护。那么这个axios怎么用呢,上网搜索了一大堆,基本上都是雷同,我也不知道那些做者有没有在本地测试过。至少我按照网上的作法,总不能成功。通过几天的奋斗,我终于把它搞清楚了,为了避免让其余的小伙伴们走弯路,我把我在实际操做中的例子分享给你们,但愿对你们有用。ios

1、安装axios

老规矩,要想使用axios,咱们得安装它,安装方式:npm install axiosnpm

2、客户端使用方式

先来看看网上的答案,如图所示,我已经在图上标识过了,这种作法是错误的axios

 

正确的作法是去掉post,如图所示:

 


 

 

3、服务器端设置

虽然客户端跨域设置好了,可是你仍是不能访问接口数据,必须在服务器端设置header属性,如图所示:跨域


 

4、axios方法封装

通常状况下,咱们会用到的方法有:GET,POST,PUT,PATCH,封装方法以下:服务器

 

 

5、封装后的方法的使用

一、在main.js文件里引用以前写好的文件,个人命名为http.jsvue-resource


 

二、在须要的地方之间调用,如图所示:post

 


 

说明:测试

GET调用方法以下,其中url是接口地址this

this.$get(url).then((res) {

//代码

});

POST调用方法以下,其中url是接口地址,data是请求的数据。

this.$post(url,data).then({

//代码

});

PATCH调用方法以下,其中url是接口地址,data是请求的数据

this.$patch(url,data).then({

//代码

});

PUT调用方法以下,其中url是接口地址,data是请求的数据

this.$put(url,data).then({

//代码

});

看了以上内容,是否是很简单,其实也没啥的,可是就是这个问题卡了我很久,在看看网上的答案,真的是不堪一击。问题解决了,心里真的好激动啊  O(∩_∩)O哈!

相关文章
相关标签/搜索