vue-cli开发时,关于ajax跨域的解决方法(推荐)


Posted in Javascript onFebruary 03, 2018

目的:使用vue-cli构建的项目,在开发时,想要访问后台接口获取数据,这时就会出现跨域问题。

在config/index.js中进行如下配置

【即在进行ajax请求时,地址中任何以/api开头的请求地址都被解析为目标地址,target就是你想要的后台接口地址】

proxyTable: { 
‘/api': { 
target: ‘https://188.188.18.8‘, 
changeOrigin: true, 
pathRewrite: { 
‘^/api': ” 
} 
} 
}
“`

vue-resource调用示例

this.$http.get('/api/v4/user/login', [options]).then(function(response){
  // 响应成功回调
}, function(response){
  // 响应错误回调
});

axios调用示例

axios({
  method: 'get',
  headers: {'Accept': '*/*'},
  url: '/api/v4/user/login',
  data: options
 })
 .then(function (response) {
  console.log(response.data)
 })
 .catch(function (error) {
  console.log(error)
 })

讲解原理:

在配置中: target: ‘https://188.188.18.8'

在上方vue-resource示例中 第一个参数为: /api/v4/user/login

就会被本地服务器自动解析为 https://188.188.18.8/v4/user/login 而这个正式我们需要的地址。

跨域原理(本地文件假装在远程服务器上):

通过浏览器打开页面,当发起请求时:本地服务器的地址(通常是localhost:8080或者127.0.0.1:8080)会收到这个请求,接下来发现这个请求地址中含有字符串 /api,那么本地服务器会将请求地址变为 https://188.188.18.8/v4/ (配置地址) + user/login(调用方法处的详细地址)。

同时本地服务器的地址会由localhost:8080 变为https://188.188.18.8/v4/,结果就是:

我们本地的文件会被认为是放在目标地址(https://188.188.18.8/v4/)服务器上的,当前服务器上的文件请求服务器其他东西,自然就不是跨域了。

以上这篇vue-cli开发时,关于ajax跨域的解决方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
网页和浏览器兼容性问题汇总(draft1)
Jun 01 Javascript
jQuery选中select控件 无法设置selected的解决方法
Sep 01 Javascript
JsDom 编程小结
Aug 09 Javascript
JS实现同时搜索百度和必应的方法
Jan 27 Javascript
浅析在javascript中创建对象的各种模式
May 06 Javascript
jQuery实现点击查看大图并以弹框的形式居中
Aug 08 Javascript
如何处理JSON中的特殊字符
Nov 30 Javascript
canvas实现刮刮卡效果
Mar 14 Javascript
JS实现留言板功能[楼层效果展示]
Dec 27 Javascript
vue watch自动检测数据变化实时渲染的方法
Jan 16 Javascript
vue组件挂载到全局方法的示例代码
Aug 02 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
Feb 24 Javascript
JavaScript设计模式之调停者模式实例详解
Feb 03 #Javascript
JavaScript实现求最大公共子串的方法
Feb 03 #Javascript
Node.js实现mysql连接池使用事务自动回收连接的方法示例
Feb 03 #Javascript
js删除数组中的元素delete和splice的区别详解
Feb 03 #Javascript
JS删除数组里的某个元素方法
Feb 03 #Javascript
jQuery niceScroll滚动条错位问题的解决方法
Feb 03 #jQuery
JS实现百度搜索接口及链接功能实例代码
Feb 02 #Javascript
You might like
php adodb操作mysql数据库
2009/03/19 PHP
PHP获取一个字符串中间一部分字符的方法
2014/08/19 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
thinkPHP+LayUI 流加载实现功能
2019/09/27 PHP
JavaScript静态的动态
2006/09/18 Javascript
jquery 图片截取工具jquery.imagecropper.js
2010/04/09 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
JavaScript 联动的无限级封装类,数据采用非Ajax方式,随意添加联动
2010/06/29 Javascript
TimergliderJS 一个基于jQuery的时间轴插件
2011/12/07 Javascript
基于Jquery实现的一个图片滚动切换
2012/06/21 Javascript
利用div+jquery自定义滚动条样式的2种方法
2013/07/18 Javascript
原生js仿jq判断当前浏览器是否为ie,精确到ie6~8
2014/08/30 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
js实现模拟银行卡账号输入显示效果
2015/11/18 Javascript
基于JavaScript判断浏览器到底是关闭还是刷新(超准确)
2016/02/01 Javascript
angularjs实现猜大小功能
2017/10/23 Javascript
AngularJs 禁止模板缓存的方法
2017/11/28 Javascript
在Vue项目中使用d3.js的实例代码
2018/05/01 Javascript
微信小程序实现自定义加载图标功能
2018/07/19 Javascript
vue中关闭eslint的方法分析
2018/08/04 Javascript
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
vue通信方式EventBus的实现代码详解
2019/06/10 Javascript
JS实现纵向轮播图(初级版)
2020/01/18 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
2020/11/06 Javascript
python字符串,数值计算
2016/10/05 Python
Python执行时间的计算方法小结
2017/03/17 Python
浅谈keras的深度模型训练过程及结果记录方式
2020/01/24 Python
HTML5 Canvas自定义圆角矩形与虚线示例代码
2013/08/02 HTML / CSS
使用Html5实现异步上传文件,支持跨域,带有上传进度条
2016/09/17 HTML / CSS
车间调度岗位职责
2013/11/30 职场文书
专业求职信撰写要诀
2014/02/18 职场文书
社区综治宣传月活动总结
2014/07/02 职场文书
体育专业求职信
2014/07/16 职场文书
道歉的话语大全
2015/05/12 职场文书
小学班主任研修日志
2015/11/13 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书