首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Vue.js Ajax(axios)

Vue.js Ajax(axios)

原创
作者头像
陈不成i
修改2021-07-27 17:40:41
修改2021-07-27 17:40:41
3.2K00
代码可运行
举报
文章被收录于专栏:ops技术分享ops技术分享
运行总次数:0
代码可运行

Vue.js 2.0 版本推荐使用 axios 来完成 ajax 请求。

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

安装方法

使用 cdn:

代码语言:javascript
代码运行次数:0
运行
复制
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

代码语言:javascript
代码运行次数:0
运行
复制
<script src="https://cdn.staticfile.org/axios/0.18.0/axios.min.js"></script>

使用 npm:

代码语言:javascript
代码运行次数:0
运行
复制
$ npm install axios

使用 bower:

代码语言:javascript
代码运行次数:0
运行
复制
$ bower install axios

使用 yarn:

代码语言:javascript
代码运行次数:0
运行
复制
$ yarn add axios

浏览器支持情况


GET 方法

我们可以简单的读取 JSON 数据:

代码语言:javascript
代码运行次数:0
运行
复制
new Vue({
  el: '#app',
  data () {
    return {
      info: null
    }
  },
  mounted () {
    axios
      .get('https://www.runoob.com/try/ajax/json_demo.json')
      .then(response => (this.info = response))
      .catch(function (error) { // 请求失败处理
        console.log(error);
      });
  }
})

GET 方法传递参数格式如下:

传递参数说明

代码语言:javascript
代码运行次数:0
运行
复制
// 直接在 URL 上添加参数 ID=12345
axios.get('/user?ID=12345')
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
 
// 也可以通过 params 设置参数:
axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

请求方法的别名

为方便使用,官方为所有支持的请求方法提供了别名,可以直接使用别名来发起请求:

代码语言:javascript
代码运行次数:0
运行
复制
axios.request(config)
axios.get(url[, config])
axios.delete(url[, config])
axios.head(url[, config])
axios.post(url[, data[, config]])
axios.put(url[, data[, config]])
axios.patch(url[, data[, config]])

注意:在使用别名方法时, url、method、data 这些属性都不必在配置中指定。

并发

处理并发请求的助手函数:

代码语言:javascript
代码运行次数:0
运行
复制
axios.all(iterable)
axios.spread(callback)

创建实例

可以使用自定义配置新建一个 axios 实例:

代码语言:javascript
代码运行次数:0
运行
复制
axios.create([config])
const instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

实例方法

以下是可用的实例方法。指定的配置将与实例的配置合并:

代码语言:javascript
代码运行次数:0
运行
复制
axios#request(config)
axios#get(url[, config])
axios#delete(url[, config])
axios#head(url[, config])
axios#post(url[, data[, config]])
axios#put(url[, data[, config]])
axios#patch(url[, data[, config]])

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装方法
  • 浏览器支持情况
  • GET 方法
  • 传递参数说明
    • 请求方法的别名
    • 并发
    • 创建实例
    • 实例方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档