Sample code for 30+ languages & platforms
Delphi DLL Requires Chilkat v9.5.0.83+

HTTPS Requests over Squid Proxy Direct TLS Connection

See more HTTP Examples

Demonstrates how to send HTTP requests through an HTTP proxy that supports Direct TLS Connections. (Chilkat tests with a squid 4.11 proxy.)

A direct TLS connection to an HTTP proxy is where the initial connection to the proxy server is TLS.

Chilkat Delphi DLL Downloads

Delphi DLL
var
http: HCkHttp;
s: PWideChar;

begin
//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

http := CkHttp_Create();

//  Set the HTTP proxy domain or IP address.
CkHttp_putProxyDomain(http,'172.16.16.46');
//  The proxy port..
CkHttp_putProxyPort(http,3128);

//  Indicate that we are to use a direct TLS connection with the HTTP proxy
//  (we use a Squid Cache: Version 4.11 for testing)
CkHttp_putProxyDirectTls(http,True);

//  If the proxy requires a login or password, we can set it here.
//  Otherwise comment out these lines.
CkHttp_putProxyLogin(http,'myProxyLogin');
CkHttp_putProxyPassword(http,'myProxyPassword');

//  All requests sent on the http object will now go through the proxy.
//  Give it a test:
s := CkHttp__quickGetStr(http,'https://www.chilkatsoft.com/helloWorld.html');
if (CkHttp_getLastMethodSuccess(http) = False) then
  begin
    Memo1.Lines.Add(CkHttp__lastErrorText(http));
    Exit;
  end;

//  The LastErrorText property also contains information when method call succeeds.
//  Have a look to see that the request was sent through the proxy:
Memo1.Lines.Add(CkHttp__lastErrorText(http));

Memo1.Lines.Add('---');
Memo1.Lines.Add(s);
Memo1.Lines.Add('---');
Memo1.Lines.Add('Success for TLS destination over direct TLS HTTP proxy.');

CkHttp_Dispose(http);