vue 请求数据方式

Vue 请求数据方式有:vue-resource、axios、fetchJsonp三种。其中,vue-resource 是 Vue官方提供的插件,axios 与 fetchJsonp 是第三方插件。

一、vue-resource 请求数据
  1. npm 安装 vue-resource

    npm install vue-resource --save
    

    说明:使用 --save 是为了在 package.json 中引用,表示在生产环境中使用。如果要将代码打包发送他人、上传到github,或者要发布代码时,package.json 就是安装所需要的包。那么,当在开发环境中时,使用 --save-dev;当在生产环境中,使用 --save。

  2. 在 main.js 即入口文件中引入 vue-resource;

    import VueResource from 'vue-resource';
    
  3. 引入后,需使用;

    Vue.use(VueResource);
    
  4. 在代码中使用:

    {// GET /someUrlthis.$http.get('/someUrl').then(response => {// get body datathis.someData = response.body;}, response => {// error callback});
    }
    

注意:vue-resource 的请求都是继承promise的。promise是属于异步请求;.then箭头函数里的this代表的是上下文。如果想获取外面的数据,请在在函数外声明,var that = this;将外层的this先储存到that中再引入函数内部。

vue-resource 参考文档:https://github.com/pagekit/vue-resource/blob/develop/docs/http.md

二、 axios 请求数据
  1. npm 安装 axios

    npm install axios --save
    
  2. 在 main.js 即入口文件中引入 axios;

    import Axios from 'axios';Vue.prototype.$axios = Axios;
    

    说明:第一行是引入 axios;第二行是 axios 的一种快捷写法,将 axios 绑定在 Vue 的原型上,这样在其它页面中使用 axios 请求数据就不用引入了,直接使用即可。

  3. 配置 axios 跨域请求代理

    3.1. 进入 config 文件夹,打开 index.js 文件;
    3.2. 找到 proxyTable: {}, 大概在 13行,在里面加入下面代码:

    //做一个接口的代理
    '/proxy_api':{   // 拦截转发路径,名字可以任意取,注意前面斜杠;target:'https://www.pubgmm.com',   //代理目标网址;changeOrigin:true,   //允许跨域pathRewrite:{'^/proxy_api':''   //重写路径}}
    
  4. 引入,在 Vue 原型上绑定一个变量 Host,名称随意;

    Vue.prototype.HOST = '/proxy_api';  //注意与接口代理的名称一致;
    
  5. 上面配置成功后,即可在组件中使用 axios 的 Http 请求,如下:

    var data = {id: 12345};
    this.API.post(url,data).then(res => {console.log(res);}).catch(function (error) {console.log(error);}).then(function () {// always executed});
    
  6. axios 并发请求处理

    methods(){getUserAccount(){return this.API.get(url1,data);},getUserPermissions(){return this.API.get(url2,data);},this.API.all([this.getUserAccount, this.getUserPermissions]).then(API.spread(function (acct, perms) {// Both requests are now completeconsole.log(acct);console.log(perms);}));
    }
    

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

三、fetchJsonp 请求数据

在使用上面两种请求方式后,fetchJsonp 未做过多的研究,有感兴趣的你可以参考文档去学习使用: https://github.com/camsong/fetch-jsonp

坚持每分每秒,完成每时每刻!!!

vue 请求数据方式相关推荐

  1. vue三种ajax请求方式,vue请求数据的三种方式

    请求数据的方式: vue-resource 官方提供的 vue的一个插件 axios fetch-jsonp 一,vue-resource请求数据 介绍:vue-resource请求数据方式是官方提供 ...

  2. vue请求数据放在created好还是mounted里好

    vue请求数据放在created好还是mounted里好 建议放在created里 created:在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图. mounted:在模板渲染成 ...

  3. php接收vue请求数据axios,详解vue axios用post提交的数据格式

    Content-type的几种常见类型 一.是什么? 是Http的实体首部字段,用于说明请求或返回的消息主体是用何种方式编码,在request header和response header里都存在. ...

  4. 前端 Vue 请求数据使用 3DES 加密/解密

    一.目的 最近工作中,前端联调后端接口请求的数据是 JSON 格式的明文,考虑到安全问题,与后端同事沟通协调后,规定前端采用 3DES 对请求数据加密,后端接收到请求后再用 3DES 进行解密. 二. ...

  5. 浅谈vue请求数据放在created里面好还是放在mounted里面好

    建议放在created里 created:在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图. mounted:在模板渲染成html后调用,通常是初始化页面完成后,再对html的do ...

  6. vue请求数据方法放在created还是mounted中

    建议放在created里 created:在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图.这时已经拿到数据,然后在进行渲染. mounted:在模板渲染成html后调用,通常是初 ...

  7. vue请求数据完成后执行_生产库删除数据后怎样执行对应的undo sql来恢复数据?...

    概述 Oracle11g 闪回事务查询就是对过去某段时间内所完成的事务的查询和撤销,通过闪回事物分析,可以识别在一个特定的时间段内所发生的所有变化,也可以对数据库表进行事物级恢复. 前面提到可以审计一 ...

  8. vue 请求数据头部传入token值

    需求:点击退出的发送请求的时候后台要求传Headers中传入token 代码如下: // 第一个{}为所传的data数据,第二个{}为传入headersthis.axios.post('/admin/ ...

  9. html引入vue请求数据

    vue不支持直接发送AJAX请求,需要使用vue-resource.axios等插件实现.首先需要引入 vue.js,vue-resource.js <script src="../j ...

最新文章

  1. SAP WM 使用Storage Location Reference实现IM层面的存储地点和WM层面的存储类型之间的软关联
  2. 15-Arm-Confidential-Compute-Software-Stack
  3. 信息系统项目管理师-信息化与信息系统考点笔记(下)
  4. POJ 3253 Fence Repair C++ STL multiset 可解
  5. [转]JavaScript优化方案
  6. Windows消息机制-PreTranslateMessage
  7. toj 4607 Multiple of 17
  8. linux uwsgi 非root,nginx – 只能用root运行uwsgi
  9. hmac sha256 php,PHP中的HMAC-SHA-256
  10. python中的map对象_python map对象
  11. 巩固——React中如何使用判断?
  12. everedit选择_【EverEdit怎么用】EverEdit好不好_使用技巧-ZOL软件百科
  13. 伺服驱动器需要什么样的脉冲?
  14. java 中文 语义分析,了解Javac编译器 - xinlan1964的个人页面 - OSCHINA - 中文开源技术交流社区...
  15. Android MPush开源消息推送系统:简洁、安全、支持集群
  16. 怎么彻底卸载cad2017_cad2017没卸载干净怎么办?
  17. office2013来了
  18. 快速排序、快排的优化 及Java实现
  19. 电容笔和触控笔有什么区别?第三方电容笔了解下
  20. 2011年影响中国通信行业发展的十件大事

热门文章

  1. 信息管理毕业设计如何选题
  2. 这个颈托火了!比围脖还舒服实用!一级医疗器械认证!每天5分钟,牵引矫正、热敷艾灸,脖子灵活了,气质都变好了!...
  3. 扫地机器人石头爬坡_为什么要给朋友推荐石头扫地机器人?石头 T6扫地机器人测评体验...
  4. 【一步步学OpenGL 18】 -《漫射光》
  5. Ubuntu——外接显示器(显示屏)无法正常使用的一种解决办法
  6. DataCleaner---4.1近义词查找
  7. 启动AutoCAD时显示“无效的配置路径/文件名”
  8. uni-app引入iconfont字体成功后显示黑白色?怎么让其保留原本色彩,已解决!
  9. 微软实现Win8设备销售量4亿的5个机密
  10. Python中的多进程并行简明教程