最近做前端开发总是遇到一个很奇怪的现象,同一个AJAX请求,在Chrome里调试的时候就会提示跨域,但是在手机模拟器或者真机上调试的时候就不会,于是百度了一下,发现是Chrome的安全策略导致的,需要在后台设置一下

在网上找了半天,发现很多大家通用的方法在我这儿都不行,今天终于找到一个可行,在这里分享给大家

首先要说的是,我的版本是59的,也就是说是49以后的版本,所以49以后版本的朋友可以用我的这个方法,如果还是之前的老版本,网上其他的通用方法应该就是OK的

 
为了便于开发,我们需要从本地环境发请求到dev环境拿数据,但由于浏览器同源策略的限制,会出现跨站请求报错。庆幸的是,chrome提供了开启允许跨站请求的方法
 
Google Chrome 版本号

首先给大家看看我的跨域报错信息,可能每个人的报错信息都不一样,总之确实是AJAX请求跨域导致的

AJAX请求跨域

我们要做的第一步,就是创建一个文件夹,这个文件夹是用来保存关闭安全策略后的用户信息的,名字可以随意取,位置也可以随意放

 
创建一个文件夹

然后打开控制台,输入下面这段代码

open -n /Applications/Google\ Chrome.app/ --args --disable-web-security  --user-data-dir=/Users/LeoLee/Documents/MyChromeDevUserData 
 
关闭安全策略代码

大家需要根据自己存放刚刚创建的文件夹的地址来更改上面的代码,也就是下面图中的红框区域,而网上大多数的教程中也正是缺少了这部分的代码导致很多用户在关闭安全策略时失败

 
用户需要根据自己的文件夹地址修改代码

输入代码,敲下回车,接下来Chrome应该会弹出一个窗口

 
Chrome弹窗

点击启动Google Chrome,会发现与之前的Chrome相比,此时的Chrome多了上方的一段提示,告诉你现在使用的模式并不安全

 
浏览器上方会多出一行提示

接下来可以将之前需要调试的程序页面复制粘贴到新打开的浏览器中,可以看到AJAX跨域的问题已经解决了,数据能够获取到了

 
AJAX跨域解决

注意:

1.Mac重启之后,非安全模式就会自动关闭了,下次要打开应该是重复以上步骤,如果没有重启Mac,那么之后你所有新打开的浏览器都是非安全模式的

2.重新开启安全策略的方法很简单就是把命令里面的disable改成enable就ok了(windows下还可以删掉追加的命令)

作者:LeoLeeYEAH
链接:https://www.jianshu.com/p/2db73311fcbe

Mac上解决Chrome浏览器跨域问题的更多相关文章

  1. VUE -- Mac上解决Chrome浏览器跨域问题

    最近做前端开发总是遇到一个很奇怪的现象,同一个AJAX请求,在Chrome里调试的时候就会提示跨域,但是在手机模拟器或者真机上调试的时候就不会,于是百度了一下,发现是Chrome的安全策略导致的,需要 ...

  2. Chrome浏览器跨域

    配置新版Chrome浏览器跨域,需要创建用户数据文件夹,在其中保存浏览器的缓存.历史记录.收藏夹等数据. Windows系统Chrome跨域 1 下载Chrome 64位绿色版,解压缩,并在桌面创建快 ...

  3. chrome浏览器跨域模式设置

    做前后分离的webapp开发的时候,出于一些原因往往需要将浏览器设置成支持跨域的模式,好在chrome浏览器就是支持可跨域的设置,网上也有很多chrome跨域设置教程.但是新版本的chrome浏览器提 ...

  4. Mac上Chrome浏览器跨域解决方案

    现在比较新的浏览器在本地调试时AJAX请求,基本都会有跨域问题.相应的解决方案也挺多的,工具也不少.像charles等抓包工具等.不过最简单的就是移除浏览器的同源限制. 我们要做的第一步,就是创建一个 ...

  5. mac上设置新版chrome浏览器跨域

    设置方法 打开一个新的可跨域的chrome窗口实现方法: 1. 打开终端 2. 输入下面的命令( 需要替换路径中的yourname ) open -n /Applications/Google\ Ch ...

  6. Chrome 浏览器跨域和安全访问问题 使用 chrome的命令行标记:disable-web-security 参数联调线上数据

    做前端的,用Ajax获取数据,是常有的事情,同域下自然没问题了,如果是不同域获取数据,浏览器就有个同源策略的限制. 如图: Origin * is not allowed by Access-Cont ...

  7. chrome浏览器跨域设置

    1.新建快捷方式,在目标那里的路径后面跟上如下参数 "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -- ...

  8. Chrome浏览器跨域问题

    最近在学习Ionic,调试http请求的时候遇到跨域问题 解决办法:使用chrome浏览器安装这个插件:Allow-Control-Allow-Origin: *

  9. [转] Chrome - 浏览器跨域访问设置(附:新老版本两种设置方法)

    [From] http://www.hangge.com/blog/cache/detail_1703.html 在进行前后分离的 webapp 开发,或者 H5 移动 App 开发时,我们会使用 P ...

随机推荐

  1. Docuemnt 的 NamespaceURI为空问题

    创建doc的方式不同,需要增加 DocumentBuilderFactory.setNamespaceAware(true); 这样Element Node.getNamespaceURI 才不为空 ...

  2. HTML5的快捷方式

    ctrl + /  单行注释 ctrl + shift + /   块注释 ctrl + shift + “+”   展开 ctrl + shift + “-”  折叠 ctrl + alt + L  ...

  3. MySQL Audit日志审计

    一.简介 数据库审计能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库受到的风险行为进行告警,对攻击行为进行阻断,它通过对用户访问数据库行为的记录.分析和汇报,用来帮助用 ...

  4. Windows netsh命令的使用

    Windows netsh命令 netsh(也被称为网络壳层),是一个存在于自微软 Windows 20000开始的所有Windows NT系列中的命令行工具. netsh允许本地或远程配置网络设备. ...

  5. python的序列化模块

    最近机器学习的模型需要序列化和反序列化,因为写个博客总结一下几个模型和数据等序列化的模块.

  6. Python3之文件读写操作详解

    文件操作的步骤: 打开文件 -> 操作文件 -> 关闭文件 切记:最后要关闭文件(否则可能会有意想不到的结果) 打开文件 文件句柄 = open('文件路径', '模式') 指定文件编码 ...

  7. python测试网站访问速度

    # -*- coding: utf-8 -*- # @Author : Felix Wang # @time : 2018/8/13 22:13 # pip3 install pycurl impor ...

  8. np.max() 和 np.maximum()的区别

    1.np.max(a, axis=None, out=None, keepdims=False) 求序列的最值 最少接受一个参数 axis默认为axis=0即列向,如果axis=1即横向 ex: &g ...

  9. AtCoder AGC004E Salvage Robots (DP)

    题目链接 https://atcoder.jp/contests/agc004/tasks/agc004_e 题解 本题的难度不在于想到大体思路,而在于如何把代码写对.. 首先我们可以不让机器人动,让 ...

  10. git 出现错误 Could not resolve host: github.com 或者 gitlab.com 或者gerrit相关( 自有服务 )

    原来是因为github.com没有被主机给解析 1.第一步是 ping 你的gitlab 或者 github服务器ip地址 如果每隔几秒有 time = xx.ms 刷新 就证明是通的 2. 编辑 e ...