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 相关文章推荐
csdn 批量接受好友邀请
Feb 19 Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
Aug 26 Javascript
select标记美化--JS式插件、后期加载
Apr 01 Javascript
js函数setTimeout延迟执行的简单介绍
Jul 17 Javascript
对JavaScript中this指针的新理解分享
Jan 31 Javascript
Bootstrap布局之栅格系统详解
Jun 13 Javascript
通过jquery实现页面的动画效果(实例代码)
Sep 18 Javascript
JS复制对应id的内容到粘贴板(Ctrl+C效果)
Jan 23 Javascript
浅谈JS验证表单文本域输入空格的问题
Feb 14 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
Mar 24 jQuery
浅谈VUE-CLI脚手架热更新太慢的原因和解决方法
Sep 28 Javascript
jQuery cookie的公共方法封装和使用示例
Jun 01 jQuery
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
SWFUpload与CI不能正确上传识别文件MIME类型解决方法分享
2011/04/18 PHP
asp函数split()对应php函数explode()
2019/02/27 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
2020/01/04 PHP
extjs关于treePanel+chekBox全部选中以及清空选中问题探讨
2013/04/02 Javascript
js获取UserControl内容为拼html时提供方便
2014/11/02 Javascript
js实现无限级树形导航列表效果代码
2015/09/23 Javascript
jQuery实现的仿百度分页足迹效果代码
2015/10/30 Javascript
JS字符串的切分用法实例
2016/02/22 Javascript
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
详解node中创建服务进程
2017/05/09 Javascript
解决angularjs service中依赖注入$scope报错的问题
2018/10/02 Javascript
基于jquery实现九宫格拼图小游戏
2018/11/30 jQuery
微信自定义分享链接信息(标题,图片和内容)实现过程详解
2019/09/04 Javascript
layer.alert回调函数执行关闭弹窗的实例
2019/09/11 Javascript
谈谈IntersectionObserver懒加载的具体使用
2019/10/15 Javascript
JS图片懒加载技术实现过程解析
2020/07/27 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
2020/11/05 Javascript
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
Python实现比较两个列表(list)范围
2015/06/12 Python
linux平台使用Python制作BT种子并获取BT种子信息的方法
2017/01/20 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
基于PyQt4和PySide实现输入对话框效果
2019/02/27 Python
Python 共享变量加锁、释放详解
2019/08/28 Python
Django 实现Admin自动填充当前用户的示例代码
2019/11/18 Python
python 实现生成均匀分布的点
2019/12/05 Python
Python开发之基于模板匹配的信用卡数字识别功能
2020/01/13 Python
python获取百度热榜链接的实例方法
2020/08/25 Python
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
Dr. Martens马汀博士法国官网:马丁靴鼻祖
2020/01/15 全球购物
工程开工庆典邀请函
2014/02/01 职场文书
公务员政审材料
2014/12/23 职场文书
车间主任岗位职责范本
2015/04/08 职场文书
文化苦旅读书笔记
2015/06/29 职场文书
手写Spirit防抖函数underscore和节流函数lodash
2022/03/22 Javascript
MySQL常用慢查询分析工具详解
2022/08/14 MySQL