前端调试必备技巧:Chrome 跨域 for Mac

3,508 阅读1分钟

2023.03.09更新

新增APP启动方式

2020.08.11更新

新增打开浏览器同时打开开发者工具的启动参数--auto-open-devtools-for-tabs

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

与此同时,前端工程师在工作时对每个页面打开开发者工具可以说是刚需,那如何让每个标签页打开时自动打开开发者工具呢?从命令行启动 Chrome的时候,给它传参数--auto-open-devtools-for-tabs就能实现。

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

然后打开终端,输入下面代码:

open -n /Applications/Google\ Chrome.app/ --args --disable-web-security  --auto-open-devtools-for-tabs --user-data-dir=/Users/${USER}/MyChromeDevUserData

大家需要根据自己存放刚刚创建的文件夹的地址来更改上面的代码,/Users/${USER}/MyChromeDevUserData改为刚创建文件夹的路径。

进阶:sh文件

将以下代码保存成x.sh文件(右键设置默认打开方式为终端):

#!/usr/bin/env bash
open -n /Applications/Google\ Chrome.app/ --args --disable-web-security  --auto-open-devtools-for-tabs --user-data-dir=/Users/${USER}/MyChromeDevUserDat

如果运行时提示 Permission denied错误或者双击运行闪退,主要是文件权限问题,修改文件权限可以解决 在终端中,输入以下代码:

chmod 777 x.sh

进阶Pro:app启动

  1. 打开自动操作.app
  2. 搜索shell,选择运行Shell脚本,选择bin/bash
  3. 复制粘贴以下代码:
#!/usr/bin/env bash
open -n /Applications/Google\ Chrome.app/ --args --disable-web-security  --auto-open-devtools-for-tabs --user-data-dir=/Users/${USER}/MyChromeDevUserDat

image.png 4. 按command+s保存。 image.png 5. 双击保存后的文件即可打开跨域的Chrome。

image.png