Einzelnen Beitrag anzeigen

-187-

Registriert seit: 24. Sep 2005
483 Beiträge
 
Delphi 2010 Architect
 
#8

AW: Indy Login+Cookies

  Alt 26. Apr 2011, 15:48
Hmm ich benutzte auch Indy 10 (10.5.7) und da gibt es kein AddCookie()...

Du hast da scheinbar auch was anderes gemacht. Ich möchte zuerst den Login posten und dann die HTML Seite runterladen.

1. Log-In Paramter senden: HTTP.Post('http://www.my-domain.com/login.php',lParams);
2. "Logged In" HTML Seite runterladen: ResponseCode.Text:=HTTP.Get('http://www.my-domain.com/');


Delphi-Quellcode:
begin
  HTTP:=TIdHTTP.Create(nil);
  HTTP.AllowCookies:=True;
  HTTP.CookieManager:=IdCookieManager1;
  lParams:=TStringList.Create;
  ResponseCode:=TStringList.Create;
  try
    try
      lParams.Values['username']:='Username';
      lParams.Values['password']:='Password';
      lParams.Values['submit']:='Login';
      HTTP.Post('http://www.my-domain.com/login.php',lParams);

      Cookie:=HTTP.Response.RawHeaders.Values['Set-Cookie'];
      Cookie:=Copy(Cookie,1,Pos(';',Cookie)-1);
      cookieURL:=TIdURI.Create('www.my-domain.com');
      HTTP.CookieManager.AddServerCookie(Cookie,cookieURL);

      ResponseCode.Text:=HTTP.Get('http://www.my-domain.com/');
      Memo1.Text:=ResponseCode.Text;
    except
      on Exception do
        ShowMessage('Fehler..');
    end;
//Edit, macht auch eigentlich kein Sinn den Cookie nochmals in den Manager einzufügen. Die Ausgabe hat gezeigt das der Cookie bereits vorhanden ist.

Geändert von -187- (26. Apr 2011 um 16:09 Uhr)
  Mit Zitat antworten Zitat