axios的使用

axios
是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。

axios需要在用到它的每个vue组件里进行import导入,如果不想在每一个组件里都引入,则可以在main.js文件里将axios挂载到Vue的全局prototype下(Vue.prototype.$http = axios)。
以后在每个组件里就可以直接使用 this.$http.get() 这类方法进行调用axios请求了。 类似的,如果想将某些组件变成全局的,都可以采用挂载到Vue.prototype下的方法。

一些有用的全局设置

  1.  baseURL设置
    

    axios.defaults.baseURL= ‘https://cnodejs.org/api/v1/’ 只要在main.js里写上这个设置,则以后再调用接口就不用写前面这串基地址了。如下面所示。

    axios.get(’/user?ID=12345’)

.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});

2… axios拦截器
拦截每一次的axios,ajax请求和响应,然后在网络请求完成之前进行相应的处理。

添加请求拦截器
axios.interceptors.request.use(function (config) {
// 在发送请求之前做些什么 比如先判断某个条件,或者判断是否携带访问密钥?

 return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器

axios.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    return response;
  }, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
  });

如果你想在稍后移除拦截器效果,可以这样:

var myInterceptor = axios.interceptors.request.use(function () {//});
axios.interceptors.request.eject(myInterceptor);

3 axios请求如果是get请求,在需要参数的情况下,则会把参数信息添加到url后面,我们也可以直接以对象形式把它写在params里面, axios.get(’/news’,{params:{page:1,size=4}}) 等价于 ‘/news?page=1&size=5’
params是添加到url的请求字符串中的,用于get请求.
其他请求则不用加params,直接写一个对象即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值