vue axios数据请求get、post方法及实例详解


Posted in Javascript onSeptember 11, 2018

我们常用的有get方法以及post方法,下面简单的介绍一下这两种请求方法

vue中使用axios方法我们先安装axios这个方法

npm install --save axios

安装之后采用按需引入的方法,哪个页面需要请求数据就在哪个页面里引入一下。

import axios from 'axios'

引入之后我们就可以进行数据请求了,在methods中创建一个方法

methods:{
   getInfo(){
     let url = "url"
     axios.get(url).then((res)=>{
       console.log(res)
     })   
   } 
 }

然后我们在mounted这个生命周期中进行调用

mounted(){
   this.getInfo() 
 }

这样就可以在控制台中查看数据,以上是一个简单的get方法数据请求,下面继续介绍一下post方法的使用,其实post和get的使用没有什么区别只是再加上一个参数就可以了,看一下我们的代码

methods:{
   postInfo(){
     let url = "url"
     let params=new URLSearchParams();//这个方法在axios的官网中有介绍,除了这个方法还有qs这个方法
     params.append("key",index) 
     params.append("key",index)
     axios.post(url,params).then((res)=>{
       console.log(res)
     })
   }  
 }

同样在mounted这个生命周期中进行调用

mounted(){
   this.postInfo()
 }

补充:下面看下axios 数据请求

项目地址:https://github.com/axios/axios

axios是一个基于Promise,同时支持浏览器端和Node.js的HTTP库,常用于Ajax请求。

Vue.js 不像jQuery 或 AngularJS,本身并没有带Ajax方法,因此需要借助插件或第三方HTTP库。

GET和POST请求

axios.get("./package.json",{
     params:{
      userId:"999"
     },
     headers:{
      token:"jack"
     }
    }).then(res=>{
     this.msg = res.data;
    }).catch(function (error) {
     console.log("error init."+error)
    });

POST:

<code class="language-javascript"> axios.post("./package.json",{ 
     userId:"888" 
    },{ 
     headers:{ 
      token:"tom" 
     } 
    }).then(res=>{ 
     this.msg =res.data 
    }).catch(err=>{ 
      console.log(err) 
    })</code>

基于Promise 可以执行多个并发请求:1

function getUserAccount(){
    return axios.get('/user/123')
   }
   function getUserPermissions(){
    return axios.get('/user/12345/premissions')
   }
   axios.all([getUserAccount(),getUserPermissions()])
   .then(axios.spread(function(acct,perms){
     //请求都完时
   }))

也可通过写入配置的形式发起请求:

axios({
  method:'post',
  url:'/user/123',
  data:{
   firstName:'Fred',
   lastName:'Flintstone'
  }
  }).then(function(res){
  console.log(res)
  })

在业务中经常将其封装为实例形式调用,便于通用配置:

// util.js
const instance = axios.create({
 baseURL:"http://jsonplaceholder.typicode.com/",
 timeout:1000,
 headers:{"Content-Type":"application/x-www-form-urlencoded"}
})
export default instance;

在mounted中调用:

Ajax({
    method:'post',
    url:'/package.json',
    data:{
    firstName:'Fred',
    lastName:'flintone'
    }
   }).then(res=>{
     console.log(res.data)
     this.msg = res.data
   })

强求拦截可用于loading..

axios.interceptors.request.use(config=>{
    console.log("require init");
    return config
   })
    axios.interceptors.response.use(response=>{
    console.log("response init");
    return response
   })

总结

以上所述是小编给大家介绍的vue axios数据请求get、post方法及实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
MooTools 1.2介绍
Sep 14 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
Apr 11 Javascript
JS实现仿京东淘宝竖排二级导航
Dec 08 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
Sep 26 Javascript
学习JavaScript设计模式之迭代器模式
Jan 19 Javascript
javascript html5实现表单验证
Mar 01 Javascript
jQuery ajax中使用confirm,确认是否删除的简单实例
Jun 17 Javascript
JavaScript中setTimeout的那些事儿
Nov 14 Javascript
js实现倒计时关键代码
May 05 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
Oct 31 Javascript
vue实现商城购物车功能
Nov 27 Javascript
Node.js安装详细步骤教程(Windows版)详解
Sep 01 Javascript
js监听html页面的上下滚动事件方法
Sep 11 #Javascript
vue 使用html2canvas将DOM转化为图片的方法
Sep 11 #Javascript
Vue项目数据动态过滤实践及实现思路
Sep 11 #Javascript
使用vue.js在页面内组件监听scroll事件的方法
Sep 11 #Javascript
vue+axios+element ui 实现全局loading加载示例
Sep 11 #Javascript
Webpack之tree-starking 解析
Sep 11 #Javascript
node.js之基础加密算法模块crypto详解
Sep 11 #Javascript
You might like
php header()函数使用说明
2008/07/10 PHP
优化php效率,提高php性能的一些方法
2011/03/24 PHP
ThinkPHP缓存方法S()概述
2014/06/13 PHP
Chrome Web App开发小结
2014/09/04 PHP
php异步多线程swoole用法实例
2014/11/14 PHP
给WordPress的编辑后台添加提示框的代码实例分享
2015/12/25 PHP
ThinkPHP3.2.3实现分页的方法详解
2016/06/03 PHP
PHP实现Snowflake生成分布式唯一ID的方法示例
2020/08/30 PHP
JavaScript CSS修改学习第二章 样式
2010/02/19 Javascript
jquery使用ajax实现微信自动回复插件
2014/04/28 Javascript
javascript的事件触发器介绍的实现
2014/06/05 Javascript
JS实现IE状态栏文字缩放效果代码
2015/10/24 Javascript
设计模式中的facade外观模式在JavaScript开发中的运用
2016/05/18 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
详谈jQuery中的一些正则匹配表达式
2017/03/08 Javascript
js实现股票实时刷新数据案例
2017/05/14 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
移动端Ionic App 资讯上下循环滚动的实现代码(跑马灯效果)
2017/08/29 Javascript
微信小程序支付之c#后台实现方法
2017/10/19 Javascript
vue.js删除列表中的一行
2018/06/30 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题
2020/07/27 Javascript
[55:35]DOTA2-DPC中国联赛 正赛 CDEC vs Dragon BO3 第二场 1月22日
2021/03/11 DOTA
Python2.7编程中SQLite3基本操作方法示例
2017/08/09 Python
Python内置函数—vars的具体使用方法
2017/12/04 Python
python pandas实现excel转为html格式的方法
2018/10/23 Python
利用pandas向一个csv文件追加写入数据的实现示例
2020/04/23 Python
CSS3 RGBA色彩模式使用实例讲解
2016/04/26 HTML / CSS
W Concept美国:精选全球独立设计师
2017/02/22 全球购物
楼面经理岗位职责范本
2014/02/18 职场文书
工会趣味活动方案
2014/08/18 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
退休教师欢送会致辞
2015/07/31 职场文书
Python中的 Set 与 dict
2022/03/13 Python
java版 联机五子棋游戏
2022/05/04 Java/Android