github地址:hpts
(如果你也用过polipo进行类似的转换的话,那你应该已经了解这个小工具是做什么的了。)
由于种种原因,我们可能会用一些SOCKS代理(如ss)来解决网络问题。而像npm,atom/apm,docker镜像的拉取等等还有很多客户端或工具都会支持http proxy,但却又不一定支持SOCKS协议。我本人也是前一段时间拉docker镜像搞得非常难受,遂有此物。
socks协议本身是支持tcp协议的,所以我们可以将对http(s) proxy发送的请求转换成对socks发送的请求。这也是这个工具的原理。
并且这样开启的http proxy也仍然能够利用socks协议代理工具上所具有的一些特性(如ss中的加密请求等)。
希望能帮到遇到同样问题的人。