问题记录:charles无法抓取locallhost或127.0.0.1的请求

问题描述:

本地启动了服务,通过http://localhost:8080/访问,在此之前已经打开了charles,但是charles没有本地请求进来

问题解析:

Charles官方对不能捕获localhost本地网页的说明,以及解决方法。全文大致意思如下:

Localhost流量不会出现在Charles中
某些系统被硬编码为不使用代理进行本地主机流量,因此当您连接到http:// localhost /时,它不会显示在Charles中。
解决方法是连接到http://localhost.charlesproxy.com/。这指向IP地址127.0.0.1,因此它应该与localhost完全相同,但它的优势在于它将通过Charles。无论Charles是在跑还是你在使用Charles,这都会有效。如果您使用其他端口,例如8080,只需像往常一样添加它,例如localhost.charlesproxy.com:8080。
您还可以在该域前放置任何内容,例如myapp.localhost.charlesproxy.com,它也将始终解析为127.0.0.1。
或者,您可以尝试添加.在localhost之后,或用本机名称替换localhost,或使用本地链接IP地址(例如192.168.1.2)。
如果Charles正在运行并且您使用Charles作为代理,那么您也可以使用local.charles作为localhost的替代方案。请注意,这仅在您使用Charles作为代理时才有效,因此上述方法是首选方法,除非您特别希望请求在不使用Charles时失败。

问题解决

原本想抓取的网址:http://localhost:8080/
现在换成:http://localhost.charlesproxy.com:8080/
成功示例:

posted @ 2022-03-03 14:29  happy-winds  阅读(1122)  评论(3编辑  收藏  举报