详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)


Posted in Javascript onNovember 12, 2018

在用vue做前端开发的时候,因为一般跑vue使用的webpack自带的node服务,而我们实际要使用的数据确是后台服务器上的,所以这就涉及到服务器请求跨域的问题。本来在诸如axios之类的网络请求参数里面配置

withCredentials: true,

就可以解决跨域问题的,但是现在浏览器比如chorme有做了新的跨域限制,比如要服务器端配置允许跨域才行,详见跨域问题解决,是英文的,看起来需要花点功夫;那有没有不需要服务器端配置就能解决浏览器的跨域问题的办法呢?答案肯定是有的!!

这里就说chorme吧,因为chorme基本都是前端主流浏览器了,配置方法如下:

版本号49之前的跨域设置

具体做法为:

1.下载并安装好chorme浏览器后在桌面找到浏览器快捷图标并点击鼠标右键的属性一栏。

2.在属性页面中的目标输入框里加上   --disable-web-security  如下图所示:

详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)

3.点击应用和确定后关闭属性页面,并打开chrome浏览器。如果浏览器出现提示“你使用的是不受支持的命令标记 --disable-web-security”,那么说明配置成功。

版本号49之后的chrome跨域设置

chrome的版本升到49之后,跨域设置比以前严格了,在打开命令上加--disable-web-security之后还需要给出新的用户个人信息的目录。众所周知chrome是需要用gmail地址登录的浏览器,登录后就会生成一个存储个人信息的目录,保存用户的收藏、历史记录等个人信息。49版本之后,如果设置chrome浏览器为支持跨域模式,需要指定出一个个人信息目录,而不能使用默认的目录,估计是chrome浏览器怕用户勿使用跨域模式泄露自己的个人信息(主要是cookie,很多网站的登录token信息都是保存在cookie里)。

具体做法为:

1.在电脑上新建一个目录,例如:C:\MyChromeDevUserData

2.在属性页面中的目标输入框里加上   --disable-web-security --user-data-dir=C:\MyChromeDevUserData,--user-data-dir的值就是刚才新建的目录。

3.点击应用和确定后关闭属性页面,并打开chrome浏览器。

再次打开chrome,发现有“--disable-web-security”相关的提示,说明chrome又能正常跨域工作了。

详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)

跨域成功后,首页换成了google的welcome页面,同时原来收藏的链接和历史记录都不见了,而C:\MyChromeDevUserData目录下则生成了新的个人信息相关的文件。

详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)

这样就解决了诸如

详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)

报错的问题,一个坑给填满了,后面还有很多坑需要去填,哈哈!!!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript window.confirm确认 取消对话框实现代码小结
Oct 21 Javascript
关于jquery input textare 事件绑定及用法学习
Apr 03 Javascript
jquery 实现上下滚动效果示例代码
Aug 09 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
May 08 Javascript
浅析JavaScript动画
Jun 10 Javascript
JavaScript禁止复制与粘贴的实现代码
May 16 Javascript
JavaScript程序中的流程控制语句用法总结
May 23 Javascript
Vue.js报错Failed to resolve filter问题的解决方法
May 25 Javascript
js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解
Mar 15 Javascript
详解webpack 配合babel 将es6转成es5 超简单实例
May 02 Javascript
浅谈Vue.use到底是什么鬼
Jan 21 Javascript
vue 子组件和父组件传值的示例
Sep 11 Javascript
jQuery 操作 HTML 元素和属性的方法
Nov 12 #jQuery
微信小程序左滑删除功能开发案例详解
Nov 12 #Javascript
微信运维交互机器人的示例代码
Nov 12 #Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 #jQuery
手动下载Chrome并解决puppeteer无法使用问题
Nov 12 #Javascript
vue elementui form表单验证的实现
Nov 11 #Javascript
跨域请求两种方法 jsonp和cors的实现
Nov 11 #Javascript
You might like
php分页思路以及在ZF中的使用
2012/05/30 PHP
PHP获取短链接跳转后的真实地址和响应头信息的方法
2014/07/25 PHP
php代码检查代理ip的有效性
2016/08/19 PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
2016/11/15 PHP
JQuery 实现的页面滚动时浮动窗口控件
2009/07/10 Javascript
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
html页面显示年月日时分秒和星期几的两种方式
2013/08/20 Javascript
js 判断图片是否加载完以及实现图片的预下载
2014/08/14 Javascript
jQuery选择器全集详解
2014/11/24 Javascript
在JavaScript中使用对数Math.log()方法的教程
2015/06/15 Javascript
jquery.gridrotator实现响应式图片展示画廊效果
2015/06/23 Javascript
jquery实现最简单的滑动菜单效果代码
2015/09/12 Javascript
基于javascript显示当前时间以及倒计时功能
2016/03/18 Javascript
JavaScript学习笔记之数组求和方法
2016/03/23 Javascript
jQuery提示插件qTip2用法分析(支持ajax及多种样式)
2016/06/08 Javascript
JavaScript自学笔记(必看篇)
2016/06/23 Javascript
JavaScript中关于iframe滚动条的去除和保留
2016/11/17 Javascript
jquery实现手机端单店铺购物车结算删除功能
2017/02/22 Javascript
详解在AngularJS的controller外部直接获取$scope
2017/06/02 Javascript
react-native DatePicker日期选择组件的实现代码
2017/09/12 Javascript
vue实现仿淘宝结账页面实例代码
2017/11/08 Javascript
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
Vue中用JSON实现刷新界面不影响倒计时
2020/10/26 Javascript
Pyhthon中使用compileall模块编译源文件为pyc文件
2015/04/28 Python
Python实现一个转存纯真IP数据库的脚本分享
2017/05/21 Python
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
2018/10/30 Python
Python中类的创建和实例化操作示例
2019/02/27 Python
python opencv实现图像边缘检测
2019/04/29 Python
在Python中等距取出一个数组其中n个数的实现方式
2019/11/27 Python
简述安装Slackware Linux系统的过程
2012/05/08 面试题
竞选学生会主席演讲稿
2014/04/24 职场文书
计算机软件专业求职信
2014/06/10 职场文书
管理人员岗位职责
2015/02/14 职场文书
产品调价通知函
2015/04/20 职场文书
建党伟业的观后感
2015/06/01 职场文书