AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Proxy probleme

Offene Frage von "delphinia"
Ein Thema von delphinia · begonnen am 11. Okt 2007 · letzter Beitrag vom 4. Mär 2009
Antwort Antwort
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#1

Proxy probleme

  Alt 11. Okt 2007, 19:50
Nutzte idHTTPServer und idHTTP als Proxy-Lösung.
Habe hier ne menge beispiele für sowas gefunden.

derzeiiger Code:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  IdAntiFreezeBase, IdAntiFreeze, IdBaseComponent, IdComponent,
  IdTCPServer, IdCustomHTTPServer, IdHTTPServer, IdTCPConnection,
  IdTCPClient, IdHTTP, StdCtrls;

type
  TForm1 = class(TForm)
    IdHTTPServer1: TIdHTTPServer;
    IdAntiFreeze1: TIdAntiFreeze;
    Label1: TLabel;
    ListBox1: TListBox;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    procedure IdHTTPServer1CreatePostStream(ASender: TIdPeerThread;
      var VPostStream: TStream);
    procedure IdHTTPServer1CommandGet(AThread: TIdPeerThread;
      ARequestInfo: TIdHTTPRequestInfo;
      AResponseInfo: TIdHTTPResponseInfo);
  private
    { Private-Deklarationen }

  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}


procedure TForm1.IdHTTPServer1CreatePostStream(ASender: TIdPeerThread; var VPostStream: TStream);
begin
        // creating our own stream so that TIdHTTPServer does not automatically
        // free the PostStream before the OnCommandGet event is triggered
  VPostStream := TMemoryStream.Create;
end;

procedure TForm1.IdHTTPServer1CommandGet(AThread: TIdPeerThread; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var
  LHTTP: TIdHTTP;
  LURL: string;
  LMethod: TIdHTTPMethod;
  LSource, LDest: TStream;
begin
  LURL := 'http://' + ARequestInfo.Host;


  Label1.Caption := LURL;
  Label2.Caption := LURL + '?' + ARequestInfo.QueryParams;
  Label3.Caption := ARequestInfo.Command;


  begin

    LSource := nil;
    LDest := nil;

    if ARequestInfo.Command = 'GETthen
    begin
      LMethod := hmGet;
    end
    else
      if ARequestInfo.Command = 'POSTthen
      begin
        LMethod := hmPost;
      end
      else
        if ARequestInfo.Command = 'HEADthen
        begin
          LMethod := hmHead;
        end
        else
        begin
          AResponseInfo.ResponseNo := 501; // not implemented
          Exit;
        end;

    if LMethod <> hmHead then
    begin
      AResponseInfo.ContentStream := TMemoryStream.Create;
      if LMethod = hmPost then
        LSource := ARequestInfo.PostStream;
      LDest := AResponseInfo.ContentStream;
    end;


    if Length(ARequestInfo.QueryParams) > 0 then
    begin
      LURL := LURL + '?' + ARequestInfo.QueryParams;
    end;

    LHTTP := TIdHTTP.Create(nil);
    try
      try
        LHTTP.DoRequest(LMethod, LURL, LSource, LDest);
      finally
        AResponseInfo.ResponseNo := LHTTP.Response.ResponseCode;
        AResponseInfo.ResponseText := LHTTP.Response.ResponseText;
        AResponseInfo.RawHeaders.Assign(LHTTP.Response.RawHeaders);
                // copy over anything else that is needed...
        LHTTP.Free;
      end;
    except
    end;
  end;
end;

end.


Leider werden wie auf dem Bild zu sehen alle möglichen wichtigen dinge nicht durch den Proxy übernommen oder weitergegeben
zb. Bilder, CSS, Cookies etc....

Wo liegt der Fehler??!
Miniaturansicht angehängter Grafiken
delphipraxis_113.jpg  
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Proxy probleme

  Alt 12. Okt 2007, 21:01
Keine eine Lösung?! hmmm
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
SirTwist

Registriert seit: 28. Sep 2006
198 Beiträge
 
Delphi XE Professional
 
#3

Re: Proxy probleme

  Alt 13. Okt 2007, 00:30
Wenn Du so eine kaputte Webseite bekommst, dann wähl doch mal im Webbrowser "Seiteninformationen" an. Da siehst Du die URLs der in der Webseite enthaltenen Objekte: Bilder, Style sheets, ...

Davon nimmst Du dir mal eine URL und gibst sie direkt im Browser ein. Dann solltest Du ja sehen, ob Dein Proxy das hinbekommt oder nicht. Dann können wir mal weitersehen...

Kleine Frage: ist das als Programmierprojekt gedacht oder benötigst du wirklich einen Proxy?

Gruß, SirTwist
  Mit Zitat antworten Zitat
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Proxy probleme

  Alt 13. Okt 2007, 04:24
Ok das Problem habe ich gelöst!


Nun habe ich eigentlich nur noch 2 Problem die Cookies.

1) Wenn ich mit meinem Proxy webseiten besuche wo ich eigentlich eingeloggt bion - so it das mit meinem Proxy nicht so

2) Formulare werden nciht ausgeführt - beispiel suche - gebe nen suchwort ein udn drücke auf suchen . und komme wieder auf die suchseite
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
lowF

Registriert seit: 18. Dez 2008
37 Beiträge
 
#5

Re: Proxy probleme

  Alt 4. Mär 2009, 21:57
Hat das hier irgentwer weiterentwickelt?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz