美文网首页
vue axios使用

vue axios使用

作者: 清远_03d9 | 来源:发表于2019-11-06 09:18 被阅读0次

axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,它本身具有以下特征:

从浏览器中创建 XMLHttpRequest
从 node.js 发出 http 请求
支持 Promise API
拦截请求和响应
转换请求和响应数据
取消请求
自动转换JSON数据
客户端支持防止 CSRF/XSRF

1. 引用

1) cnpm install
2) cnpm install vue-axios --save
3) cnpm install qs.js --save  //这一步可以先忽略,它的作用是能把json格式的直接转成data所需的格式

yarn安装
yarn add axios

2. 在main.js页面引用:

import Vue from 'vue'
import axios from 'axios'
Vue.prototype.$axios = axios    //全局注册,使用方法为:this.$axios
Vue.prototype.qs = qs           //全局注册,使用方法为:this.qs

3. 使用请求:

<script>
    export default{
        data(){
            return{
                userId:666,
          token:'',
            }
        },
        created(){
            this.$axios({
                method:'post',
                url:'api',
                data:this.qs.stringify({    //这里是发送给后台的数据
                      userId:this.userId,
                      token:this.token,
                })
            }).then((response) =>{          //这里使用了ES6的语法
                console.log(response)       //请求成功返回的数据
            }).catch((error) =>
                console.log(error)       //请求失败返回的数据
            })
        }
    }
</script>

4. 同时发起多个请求

unction getUserAccount() {
  return axios.get('/user/12345');
}

function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}

axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    // Both requests are now complete
  }));

4. 创建一个拥有通用配置的axios实例

axios.creat([config])
var instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

相关文章

网友评论

      本文标题:vue axios使用

      本文链接:https://www.haomeiwen.com/subject/lmdybctx.html