Delphi 用Indy测试代理

Delphi 用Indy测试代理,delphi,testing,proxy,delphi-xe2,indy,Delphi,Testing,Proxy,Delphi Xe2,Indy,我广泛依赖Indy 10下载/上传通过https发送的文件 我的代码如下所示,我使用的是Delphi XE2: Proxy****变量均由最终用户定义 我需要确保我的应用程序能够跨各种代理设置工作,但我对代理几乎一无所知: 我该怎么做?在本地设置代理或者使用类似Fiddler的东西,或者测试,本地测试来表示我很好,这足够了吗?是否有一些公司/用户使用的流行/事实上的标准代理工具?我的应用程序同时面向消费者和企业 这是一个严肃的问题!虽然我远非新手,但我几乎从未接触过代理,除了很久以前的一到两次,

我广泛依赖Indy 10下载/上传通过https发送的文件

我的代码如下所示,我使用的是Delphi XE2:

Proxy****变量均由最终用户定义

我需要确保我的应用程序能够跨各种代理设置工作,但我对代理几乎一无所知:

我该怎么做?在本地设置代理或者使用类似Fiddler的东西,或者测试,本地测试来表示我很好,这足够了吗?是否有一些公司/用户使用的流行/事实上的标准代理工具?我的应用程序同时面向消费者和企业


这是一个严肃的问题!虽然我远非新手,但我几乎从未接触过代理,除了很久以前的一到两次,足以忘记它的一切

代理是基于标准的。符合HTTP1.1的代理必须按照中所述操作。一个流行的免费代理缓存是,你可以用它来测试你的软件,但是使用INDY通常很容易,因为你只需要设置属性和身份验证信息,INDY就可以在内部处理它。
IdHTTP               := TIdHTTP.Create(nil);

with IdHTTP do
begin
     HTTPOptions     := [hoForceEncodeParams, hoNoParseMetaHTTPEquiv];
     AllowCookies    := True;
     HandleRedirects := True;
     ProtocolVersion := pv1_1;

     IOHandler       := ASSL;
     Compressor      := ACompressor;
     CookieManager   := ACookieManager;

{$ifdef DebugProxy}
     ProxyParams.ProxyServer := '127.0.0.1';
     ProxyParams.ProxyPort   := 8888;
{$else}
     if (TheProxyServer <> '') then
     begin
          with ProxyParams do
          begin
               ProxyServer   := TheProxyServer;    // DNS name of the proxy server or its IP address
               ProxyPort     := TheProxyPort;      // Port the HTTP the HTTP proxy listens on
               ProxyUsername := TheProxyUsername;  // Username if the proxy requires authentication
               ProxyPassword := TheProxyPassword;  // Password if the proxy requires authentication
          end;    // with
     end;
{$endif}