axios基础及请求传参

摘要:
ID=12345,该接口需要参数ID的值,可以采用以下三种方式://使用get请求axios.get//使用get请求axios;//使用post请求axios;后两种方式,get请求和post请求参数分别对应params和data,为一个对象,后端服务器可以直接取到参数中的字段。
axios基础使用及组件传参

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

参考官方文档:https://github.com/axios/axios

1、安装

//使用npm
npm install axios --save

//使用yarn
yarn add axios

2、引用

Vue-cli 中单个组件引入(ES6)

import axios from 'axios'

如果要全局使用axios就需要在main.js中设置成全局的,然后再组件中通过this调用

Vue.prototype.$axios =axios;

this.$axios.get();

3、使用

如果发送一个简单的请求,且没有参数(也可以写为axios('url').then().catch(),axios默认get请求)

import axios from axios
 
//发送一个简单的Http请求
axios.get('url')            //url为http的请求地址
  .then((res)=>{
    console.log(res)     //then用于处于成功事件,res为服务端返回的数据
})
  .catch((err)=>{
    console.log(err);    //cathch用于处理错误事件
  })

发送多个axios请求

functiongetUserAccount() {
  return axios.get('/user/12345');
}
 
functiongetUserPermissions() {
  return axios.get('/user/12345/permissions');
}
 
axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function(res1, res2) {
    //当这两个请求都完成的时候会触发这个函数,两个参数分别代表返回的结果
}));

如果需要携参请求,例如我请求的后端接口为:/user?ID=12345,该接口需要参数ID的值,可以采用以下三种方式:

//使用get请求
axios.get('/user', {
    params: {
      ID: 12345}
})

//使用get请求
axios({
  method: 'get',
  url: '/user',
  params: {
    ID: 12345}
});

//使用post请求
axios({
  method: 'post',
  url: '/user',
  data: {
    ID: 12345}
});

后两种方式,get请求和post请求参数分别对应params和data,为一个对象,后端服务器可以直接取到参数中的字段。

如果采用函数形式封装axios请求,param为getUser传入的参数,应该为一个对象:

functiongetUser (param) {
  returnaxios({
    method: 'get',
    url: '/user',
    params: param
  })
}

采用async/await的形式

async functiongetUser (param) {
  try{
    const res = await axios.get('/user', {
      params: param
    })
    console.log(res)
  } catch(err) {
    console.error(err)
  }
}

http://10.194.101.47:8093/ctm02osss/getCameraInfo?regionIndexCode=9973ad2e-8dde-4cb5-bda2-f9023d24f0d1&pageNo=1

免责声明:文章转载自《axios基础及请求传参》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Visual Studio 快捷键机器视觉及图像处理系列之一(C++,VS2015)——搭建基本环境下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

打造自己的数据访问层(一)

项目开发中,大多数开发人员的核心工作就是如何对数据进行存储及访问。为了进行数据操作,我们首先得解决几个基本问题:1、如何与一个数据库建立连接。2、如何从数据库读取相应的数据。3、如何对数据表进行增改操作。.NET中,ADO.NET很方便的解决了上面三个问题,我们可以使用DbConnection进行连接,DataSet进行数据存储,DataAdapter进行...

SQL代码检查

1.使用 insert、select必须给出字段列表 因为使用*代替所有的字段后,如果表结构发生变化,应用程序可能出现无法识别的情况。比如java的Struts2+spring+ibatis框架,sql语句在XML档配置,内容:<select parameterClass="java.util.HashMap" resultClass="TableC...

freeswitch用户整合(使用mysql数据库的用户表)

freeswitch是一款强大的voip服务器,可以语音和视频。但是它默认是采用/directory文件夹下的xml来配置用户的,对于整合到现有系统或者使用数据库保存用户信息的系统都是非常不方便的,所以,本文主要描述一种方法,解决freeswitch用户整合的问题。 完成这一任务需要三步,配置unixodbc,将用户验证转接到lua脚本,修改拨号计划使得...

Echarts柱状图的点击事件

最近在做一些图表统计的功能,用到了百度的开源图表软件Echatrs,不得不提的是:不但上手简单而且扩展功能也是十分强大。在使用的过程中也遇到了不少问题,可能由于有关Echatrs的资料并不是很齐全,所以查找资料的过程也是相当曲折的,所以还是自己就遇到的问题总结一下吧。        点击柱状图跳转页面的功能:        找到你的生成Option事件的方...

c#调用存储过程两种方法

摘要 存储过程的调用在B/S系统中用的很多。传统的调用方法不仅速度慢,而且代码会随着存储过程的增多不断膨胀,难以维护。新的方法在一定程度上解决了这些问题。   关键词 ASP.NET;存储过程     在使用.NET的过程中,数据库访问是一个很重要的部分,特别是在B/S系统的构建过程中,数据库操作几乎成为了一个必不可少的操作。调用存储过程实现数据库操作使很...

微信app支付,完整流程,完整代码 (转)

微信app支付流程 需要的配置参数 private function wechat($body,$indent_id,$cou,$user_id,$total_fee,$ip,$domain,$nonce_str){ //微信配置信息和初始逻辑 $appid= WxPayConfig::APPID; //appid (微信开放平台的应用appid) $bo...