Announcement

Collapse
No announcement yet.

Proxyserver

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Proxyserver

    Hat jemand ´mal ´nen Rat, wie man mit dem Beispiel "ProxyServer" der Indy-Komponenten beliebige Seiten aufrufen kann.
    Ich lasse das Beispiel-Programm auf meinem "ServerRechner" mit DSL laufen und versuche von einem anderen Rechner beliebige Seiten aufzurufen.

    Mit der Angabe HOST = "www.borland.com" funktioniert das ganze. Ich bekomme aber nur die Seiten von Borland angezeigt...

    Falls man im Host die Client- oder Server-IP-Adresse der DSL-Verbindung angibt gehts nicht.

    Ich meine, dass das schon irgendwann früher bei einer normalen ISDN-Verbindung funktionierte..

    Schon ´mal Danke im voraus...

  • #2
    Hallo

    Ob der Quellcode bei DSL funktioniert weiß ich nicht, bei ISDN funktioniert er.

    <PRE>
    uses IdTcpClient, IdURI;

    function GetHost(URL: string):string;
    var
    LURI:TIdURI;
    begin
    LURI:=TIdURI.Create(URL);
    result:=LURI.Host;
    LURI.Free;
    end; //GetHost

    function GetPort(URL: string):integer;
    var
    LURI:TIdURI;
    begin
    LURI:=TIdURI.Create(URL);
    if Length(LURI.Port)<>0 then
    result:=StrToInt(LURI.Port)
    else
    result:=80;
    LURI.Free;
    end; //GetPort

    procedure TForm1.IdMappedPortTCP1Execute(AThread: TIdMappedPortThread);
    var
    RequestHost:string;
    RequestPort:integer;
    begin
    try
    RequestHost:=GetHost(AThread.NetData);
    RequestPort:=GetPort(AThread.NetData);
    if (RequestHost<>IdMappedPortTcp1.MappedHost) or
    (RequestPort<>IdMappedPortTcp1.MappedPort) then
    begin
    IdMappedPortTCP1.MappedHost:=RequestHost;
    IdMappedPortTCP1.MappedPort:=RequestPort;
    TidTcpClient(AThread.OutboundClient).Host:=Request Host;
    TidTcpClient(AThread.OutboundClient).Port:=Request Port;
    TidTcpClient(AThread.OutboundClient).Disconnect;
    TidTcpClient(AThread.OutboundClient).Connect(AThre ad.ConnectTimeOut);
    end; //ChangeConnect
    finally
    end;

    </PRE>

    viel Spaß beim ausprobiere

    Comment

    Working...
    X