使用Charles Proxy进行远程调试

使用Charles Proxy进行远程调试

使用Charles Proxy进行远程调试

当您没有创建电视应用程序且无权访问源代码时,支持电视应用程序最困难的部分就是在寻求帮助时对其进行调试。 这几乎是不公平的要求-“我们不会授予您编辑代码的权限,但希望您提供答案。” 编辑远程代码很麻烦...但是,由于有了Charles,这种做法变得非常容易。 Charles允许我拦截对远程CSS和JavaScript文件的调用并替换为我自己的调用,从而使我无权更改的远程代码的调试变得无限轻松。

Charles拥有很多功能,以至于令人迷惑。 我希望对您来说更简单。 在这篇文章中,我将引导您完成文件替换,以远程调试Web应用程序。

Charles是一款付费应用,可提供30天的试用期。 我没有得到报酬,甚至没有要求我认可Charles; 这是我用于远程调试的工具,所以我选择编写它。

Charles几乎可以做所有事情,但是我们将把这篇文章限制为解决一个常见问题:将远程文件替换为可以替换的本地文件,从而使我们可以完全控制其内容,并有机会解决任何问题!

远程调试

要将远程文件替换为本地文件,第一步是使用Charles菜单,然后选择Tools> Map Remote 弹出“ 映射远程设置”窗口,其中列出了您已定义的远程列表。 要添加一个,请单击“添加”按钮,您将看到以下屏幕:

使用Charles Proxy进行远程调试

最上面的块用于远程文件设置,第二个块用于本地替换设置。 这意味着您的文件必须“提供”(不使用file://协议); 您可以使用PythonNode.js轻松提供目录。 假设您要提供文件,请先输入远程URL设置,然后输入本地设置。 这是一个例子:

使用Charles Proxy进行远程调试

上面的屏幕截图显示了用本地文件替换生产MDN .js文件的过程。 为了确保正在使用本地文件,请在文件顶部放置一个特殊的console.log调用,并确保消息在控制台内。

这只是Charles提供的简单功能之一,但它使我的生活变得非常轻松。 在向Charles输入一些规则后,调试远程应用程序从不可能变为轻松。 如果您有没有Charles的好方法,我很想知道,请分享!

翻译自: https://davidwalsh.name/remote-debugging