2013-08-11 2 views
-1

난 그냥 체인 프록시에 대해 읽고 난 잘 난 인디 TIdHttp 구성 요소와 주변 연주, 델파이에서 그것을 시도하고 싶어하고 난 내가 두 TIdHttp 구성 요소를 필요로하지, 그것을 할 방법을 알아낼을 couldnt? 어쩌면 하나가 다른 사람에게 요청을 보냅니 까?체인 프록시는

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

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

나는 체인 된 프록시를 사용하여 간단한 GET/POST를 보내려합니다.

그게 가능합니까? 또는이 작업을 도와 줄 다른 요소가 있습니까?

감사합니다.

답변

9

TIdHTTP.ProxyParams 속성은 체인을 지원하지 않습니다.

이 체인으로 연결된 프록시를 사용하려면 다음을 수행해야합니다

  1. TIdHTTP.IOHandler 속성에 TIdIOHandlerSocket 유도 된 구성 요소를 지정합니다. 다음 중 하나 :

    a. Indy의 표준 TCP/IP 구현 인 TIdIOHandlerStack.

    b. TIdSSLIOHandlerSocketBase - 유도 된 구성 요소 (예 : TIdSSLIOHandlerSocketOpenSSL). HTTPS URL을 사용하려면이 항목을 사용해야합니다.

  2. IOHandler의 TransarentProxy 속성에 TIdCustomTransparentProxy이 포함 된 구성 요소를 할당하십시오. Indy는 기본적으로 두 가지 구성 요소를 제공합니다 :

    a. TIdSocksInfo으로, SOCKS 4/4a/5 프로토콜을 구현합니다.

    b. TIdConnectThroughHttpProxy은 HTTP CONNECT 동사를 구현합니다.

  3. TIdCustomTransparentProxy.ChainedProxy 속성을 통해 복수 TIdCustomTransparentProxy- 부속 구성 요소를 함께 체인합니다.