Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi login via post mit indy (https://www.delphipraxis.net/97331-login-via-post-mit-indy.html)

Delphi-Fan-Friedrichsdorf 8. Aug 2007 22:11


login via post mit indy
 
Hallo,
ich möcht mich auf einer Website mit einem Loginfeld anmelden.
Die Seite verwaltet den Login mit Cookies, der Login läuft über post.
Meine Frage ist, was muss ich mit der Idhttp-komponente von indy posten wenn ich mich einloggen will???

mkinzler 9. Aug 2007 05:35

Re: login via post mit indy
 
Hier im Forum suchenINDY POST

SirThornberry 9. Aug 2007 07:08

Re: login via post mit indy
 
du Frage ist berechtigt und ein einfacher Link auf die suche hilft da wenig. Es wurde so gut wie nie ausführlich/ordentlich gezeigt wie man mit IdHttp + Cookies arbeitet.

Delphi-Fan-Friedrichsdorf 9. Aug 2007 17:03

Re: login via post mit indy
 
Die Suche habe ich schon belastet, aber SirThornberry hat recht, die hilft mir nichts, da nie jemand eine gute erklärung geliefert hat.

Delphi-Fan-Friedrichsdorf 10. Aug 2007 16:11

Re: login via post mit indy
 
Wenn keiner antwortet, hat entweder keiner das nötige Wissen (gut zu wissen, dass nicht nur ich zu dumm bin :-D ),
oder meine Fragestellung wurde nicht verstanden.
Zu letzterem:

Das ist der login code in html:
----------------------------------

<form method="post" action="http://www.site.de/login/">
<INPUT TYPE="hidden" name="action" VALUE="login"/>
<INPUT TYPE="hidden" name="retard_protection" VALUE="1"/>
Login with username and password:
Username:
<input class="textbox" type="text" name="name" size="30"/>

Password:
<input class="textbox" type="password" name="pass" size="30"/>

<input type="submit" class="button" name="login" value="Login"/>

Forgotten your password? [Click here!]

----------------------------------

Was muss ich, unter der verwendung der idhttp-komponente, tun um eingeloggt zu werden???

SirThornberry 10. Aug 2007 16:27

Re: login via post mit indy
 
ohne verwendung der coockies müsstest du aus dem HTML-Quelltext alle Felder heraussuchen zwischen "<form" und "</form>"

in dem von dir geposteten Bereich wären das diese Felder:

name="action" VALUE="login"
name="retard_protection" VALUE="1"
name="name"
name="pass"
name="login" value="Login"

da das abschließende "</form>" fehlt kann man nur raten ob es alle felder sind oder ob sich noch mehr irgendwo verstecken welche du uns verschwiegen hast.
Diese Felder sendest du dann mit den dazugehörigen Werten an die Adresse die im "Form"-Tag bei action steht:
http://www.site.de/login/

würde dann so aussehen:
Delphi-Quellcode:
var
  lParams: TStringList;
begin
  lParams := TStringList.Create();
  lParams.Add('action=login');
  lParams.Add('retard_protection=1');
  lParams.Add('name=' + EditName.Text);
  lParams.Add('pass=' + EditPass.Text);
  lParams.Add('login=Login');
  ErgenbisQuelltext := IdHttp.Post('http://www.site.de/login/', lParams);

Delphi-Fan-Friedrichsdorf 10. Aug 2007 23:00

Re: login via post mit indy
 
Danke! :thumb:
hab ich gerade selbst herausgefunden (gerade = 20:00 Uhr) :-D
ich hatte in meinen ersten versuchen die ersten beiden Felder übersehen.
Und die Feldname hatt ich auch nicht mitgesendet...
Mit html bin ich blutiger Anfänger.
Trotzdem noch mal danke, diese antwort wollte ich.

P.S.: Ja, das sind alle Felder...
Das "</form>" habe ich wohl beim kürzen des Quelltextes weggeschnitten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:03 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