vue框架搭建之axios使用教程
前后端数据交互作为项目最基础需求(静态的除外),同时也是项目中最重要的需求。
本文重点介绍axios如何配合vue搭建项目框架,而axios的详细使用介绍请移步 使用说明
1、安装
cnpm install axios --save-dev
2、引入
main.js 文件引入:
import Vue from 'vue'//引入vue import axios from 'axios'//引入axios Vue.prototype.$axios = axios;//把axios挂载到vue上
3、使用
getStore(){ let that = this that.$axios({ method: "post",//指定请求方式 url: "/business-app/getCityShopList.cgi",//请求接口(相对接口,后面会介绍到) data: { cityId: cityId, data:{}, isDebug:"1", longitude: "", latitude: "" } }) .then(function(res){ //接口成功返回结果执行 }) .catch(function(err){ //请求失败或者接口返回失败或者.then()中的代码发生错误时执行 }) }
4、跨域与代理
在vue本地开发时请求总是发生跨域
解决方案:配置代理
config 下的index.js 文件
proxyTable: { '/business-app/*': { target: 'http://****:8080',//被代理的接口 changeOrigin: true, secure:true // 如果是https接口,需要配置这个参数 } },
当URL以 '/business-app/'层级开端时,把 'http://****:8080' 代理成本地IP
5、 baseURL与代理
两者用途不一样,
baseUrl会附加到你绑定的axios实例(如果是全局的,那就是所有实例)上,即如果get/post的url参数是相对路径(如) /api/c/xx,那就会执行 baseUrl + '/api/c/xx',如果未指定baseUrl,那就走浏览器地址栏里的base + baseUrl。
webpack里的proxyTable是测试环境为了避免浏览器下的跨域访问,而以nodejs代理成同前端页面(即浏览器地址栏)同域的一种处理。指定proxyTable后, axios就不需要指定baseUrl了。proxyTable会把base + '/api/c/xx'代理到【base baseUrl + '/api/c/xx'】的接口地址上。
当然工程发布时,后端和前端也需要发布到同一个域下。
6、axios与vue-axios
先看两者的用法
Vue.prototype.$axios = axios 和 import Vueaxios from ‘vue-axios' Vue.use(VueAxios,axios)
解释:使用vue-axios更多是为了符合规范,并且方便协作
7、其他待补充
对于跨域的处理,除了采用代理外,也可用JSONP或者Qs(axios官方推荐)方案,待详细研究后再来补充
总结
以上所述是小编给大家介绍的vue框架搭建之axios使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
- spring mvc开发的mongodb网页版客户端
- nginx转发后后端怎么获取用户真实IP
- MongoDB aggregation $unwind
- spring data mongodb 代码连接数据库方式
- spring data mongodb dbref 关联查询
- spring-data-mongodb mapreduce使用
- 项目中如何设计通用的评论模块
- java8 stream
- spring boot中自定义错误提示页面
- spring boot中删除Data MongoDB的_class
- 用aop加redis实现通用接口缓存
- spring boot 实现mysql读写分离
- spring boot集成druid连接池
- spring boot整合dubbox进行服务拆分
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- centos7 esxi6.7模板实际应用详解
- Centos8搭建本地Web服务器的实现步骤
- 总结Linux 6种日志查看方法
- Ubuntu18.04一次性升级Python所有库的方法步骤
- linux下php安装xml扩展的详细步骤
- 查看linux文件的命令详解
- 解决Linux+Apache服务器URL区分大小写问题
- Centos8(最小化安装)全新安装Python3.8+pip的方法教程
- 使用 Linux seq 命令生成数字序列(推荐)
- CentOS 7上为PHP5安装suPHP的方法(彭哥)
- Linux修改主机名命令详解
- 在CentOS 7.2上安装SuPHP的详细方法
- centos6-7 yum安装php的方法(推荐)
- Linux修改用户所属组的方法
- centos通过yum安装php的教程