Charles Proxy - 将远程映射到localhost,从https到http

时间:2018-05-09 08:48:46

标签: ssl https proxy charles-proxy

我试图使用Charles将我的服务器请求映射到Mac上的localhost。 服务器使用HTTPS,本地是HTTP。 我是从Chrome浏览器,iOS模拟器和Postman尝试的。 它总是失败。

我在map remotemy-server.com/*的查尔斯中设置了http://localhost:PORT。 如果我尝试https://my-server.com/,查尔斯会映射请求,但我在CONNECT请求中收到错误。 如果我尝试http://my-server.com,请求会成功。

编辑: 有一个答案显示rewrite而不是map remote。这是好的和有效的,但我觉得这是一种解决方法。我想像往常一样使用map remote。我想这需要Charles设置和机器设置

4 个答案:

答案 0 :(得分:5)

您应该尝试使用Rewrite函数,如下所示:

enter image description here

答案 1 :(得分:1)

enter image description here

正如@kubano建议的那样,我正在使用带有URL重写的REWRITE工具。 为了映射所有子路径,我使用正则表达式组来替换主机名,但重新附加'.com'之后的所有内容。 当用()包装东西时,它被称为'group',你可以用$ 1 $ 2 ......等等。在这种情况下,'。com'之后的内容在onBindViewHolder部分中被称为$ 1

答案 2 :(得分:1)

我建议使用Proxyman中的Map Remote在HTTP <-> HTTPS之间进行映射,这更易于设置。

只需创建一个规则,将HTTPS设置为HTTP,然后将主机设置。它将从https://your-server.com映射到http:// localhost:3000

文档:https://docs.proxyman.io/advanced-features/map-remote

enter image description here

免责声明:我是Proxyman的创建者,希望对您有所帮助。

答案 3 :(得分:0)

万一有人来这里搜索如何从https位置(开箱即用对我不起作用)中映射本地(文件):

类似于重写规则(至少在Charles 4中),它与map remote一起使用,将https映射到http位置(例如localhost),然后将该URL(localhost)映射到文件 enter image description here