delphi中的链式代理

Oue*_*ine -1 delphi proxy indy chained

我刚刚阅读了关于链接代理的内容,我想在delphi中尝试它,好吧我用indy TIdHttp组件玩,我无法弄清楚如何做到这一点,我需要两个TIdHttp组件吗?也许一个人将请求发送给另一个人?

  http1.ProxyParams.ProxyPort := Port1;
  http1.ProxyParams.ProxyServer := Server1;

  http2.ProxyParams.ProxyPort := Port2;
  http2.ProxyParams.ProxyServer := Server2;
Run Code Online (Sandbox Code Playgroud)

我只想用链式代理发送一些简单的GET/POST.

这甚至可行吗?或者还有其他任何组件来帮助我完成这项任务吗?

谢谢.

Rem*_*eau 9

TIdHTTP.ProxyParams属性不支持链接.

要使用链式代理,您需要:

  1. 将 - TIdIOHandlerSocket派生组件分配给该TIdHTTP.IOHandler属性.或者:

    一个.TIdIOHandlerStack,这是Indy的标准TCP/IP实现.

    湾 一个TIdSSLIOHandlerSocketBase衍生的组件,如TIdSSLIOHandlerSocketOpenSSL.如果要使用HTTPS URL,则必须使用此选项.

  2. TIdCustomTransparentProxy-derived组件分配给IOHandler的TransarentProxy属性.Indy默认提供两个这样的组件:

    一个.TIdSocksInfo,它实现了SOCKS 4/4a/5协议.

    TIdConnectThroughHttpProxy,实现HTTP CONNECT动词.

  3. TIdCustomTransparentProxy通过TIdCustomTransparentProxy.ChainedProxy属性将多个组件链接在一起.