如何用本地Javascript替换生产网站的Javascript?

Jul*_*ert 23 javascript debugging

在我的制作网站上,我编译了Javascript.

<script src="/js/mycode.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

如果我可以让我的浏览器替换它,那将非常方便调试

<script src="http://localhost/js/mycode1.js"></script>
<script src="http://localhost/js/mycode2.js"></script>
...
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用像Greasemonkey用户脚本这样的东西来操纵DOM,但是我无法想出一个可以阻止执行"mycode.min.js"的解决方案.

有任何想法吗?

epa*_*llo 47

我这样做的方式:

  1. 下载并安装Fiddler如果您在Windows上.
  2. 启用它来捕获http流量[IE/Chrome默认执行,Firefox - 通过添加安装启用它]
  3. 加载有问题的页面.
  4. 在左侧的http流量列表中找到要替换的文件,然后单击它.
  5. 在右侧有一个AutoResponder选项卡.点击它.
  6. 单击复选框以"启用自动回复"
  7. 单击添加..按钮
  8. 右边第二个下拉列表,选择"查找文件"选项
  9. 在对话框中找到该文件,然后单击"保存"
  10. 重复步骤4-9,直到替换要替换的所有文件
  11. 刷新浏览器窗口,您的新js文件正在运行

您可以替换html文件并更改页面上的js链接,而不是替换js文件.

如果你在mac/linux上,你可以安装Charles.(不是免费的,有审判)步骤类似,但不一样.

如果您使用Google Closure压缩文件,则可以安装其插件来执行源映射.

  • 伙计..我欠你一杯啤酒! (2认同)

Lek*_*eyn 5

如何使用类似于http://static.example.com静态文件(例如.js文件)的子域,以及更改主机文件?

<script type="text/javascript" src="http://static.example.com/js/mycode.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

将以下行添加到主机文件(/etc/hosts对于Linux C:\WINDOWS\System32\drivers\etc\host):

static.example.com 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

当然,你已经从运行与文件服务器http://static.example.com/127.0.0.1.

另一种解决方案是使用类似的Privoxy(本地)代理服务器重定向http://example.com/js/http://localhost/js/.