-1

プロキシの連鎖について読んだばかりで、デルファイで試してみたかったのですが、インディTIdHttpコンポーネントで遊んでみましたが、その方法がわかりませんでした.2つのTIdHttpコンポーネントが必要ですか? たぶん、リクエストを別の人に送信しますか?

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

  http2.ProxyParams.ProxyPort := Port2;
  http2.ProxyParams.ProxyServer := Server2;

チェーンされたプロキシで単純な GET/POST を送信したいだけです。

それは実行可能ですか?または、このタスクを支援する他のコンポーネントはありますか?

ありがとうございました。

4

1 に答える 1

9

プロパティはTIdHTTP.ProxyParams連鎖をサポートしていません。

連鎖プロキシを使用するには、次のことを行う必要があります。

  1. TIdIOHandlerSocket派生コンポーネントをTIdHTTP.IOHandlerプロパティに割り当てます。また:

    a. TIdIOHandlerStack、これは Indy の標準 TCP/IP 実装です。

    b. などのTIdSSLIOHandlerSocketBase派生コンポーネントTIdSSLIOHandlerSocketOpenSSL。HTTPS URL を使用する場合は、これを使用する必要があります。

  2. TIdCustomTransparentProxy派生コンポーネントを IOHandler のTransarentProxyプロパティに割り当てます。Indy は、デフォルトで 2 つのそのようなコンポーネントを提供します。

    a. TIdSocksInfo、SOCKS 4/4a/5 プロトコルを実装します。

    b. TIdConnectThroughHttpProxy、HTTPCONNECT動詞を実装します。

  3. プロパティを介して、複数のTIdCustomTransparentProxy派生コンポーネントを連結しTIdCustomTransparentProxy.ChainedProxyます。

于 2013-08-11T06:40:31.527 に答える