调试node.js上的所有HTTP

调试node.js上的所有HTTP,node.js,macos,http,azure,proxy,Node.js,Macos,Http,Azure,Proxy,在搜索了谷歌之后,我做了一些事情&所以,几天后我就举手了。尝试做一些我认为很常见的事情:在开发node.js应用程序时调试/检查所有HTTP流量 在Windows中,它就像启动Fiddler一样简单,我可以看到来自所有进程的所有HTTP和HTTPS流量。但我已经将平台切换到OSX,并尝试让同样的工作 我尝试过使用Charles&MITMPROXY,但我看到的只是我的node.js应用程序的流量,以及响应。我的node.js应用程序正在调用外部服务,一些使用流行的包(我已经看到了如何设置),但也使

在搜索了谷歌之后,我做了一些事情&所以,几天后我就举手了。尝试做一些我认为很常见的事情:在开发node.js应用程序时调试/检查所有HTTP流量

在Windows中,它就像启动Fiddler一样简单,我可以看到来自所有进程的所有HTTP和HTTPS流量。但我已经将平台切换到OSX,并尝试让同样的工作

我尝试过使用Charles&MITMPROXY,但我看到的只是我的node.js应用程序的流量,以及响应。我的node.js应用程序正在调用外部服务,一些使用流行的包(我已经看到了如何设置),但也使用其他包,如。困扰我的是,我无法让任何调试代理在azure存储包发送/接收到它们调用的端点时显示给我

从概念上来说,我想我明白了。。。我必须告诉这些不同的东西(比如node.js、request和azure存储)才能通过这些工具使用的代理。。。但是,在不修改其源代码的情况下,如何做到这一点呢?就像Fiddler在Windows上的工作方式一样,你不能对“所有流量都通过这个代理”做些什么吗


我会在OSX上使用Fiddler,但在与Telerik通话后,它目前无法正常工作,而且看不到ETA。

所以我遇到的问题是我认为。。。在我的特定实例中,我用来访问Azure存储的模块没有使用默认代理。我发现一个包(**通过代理劫持了所有使用该包控制它的东西。现在我看到我正在使用的HTTP调试器中出现了一些东西

现在的问题是,当我尝试访问HTTPS端点时…使用类似Charles的东西,它使用了自己的SSL证书,Azure不信任该证书,因此连接被拒绝。回到绘图板