Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Indy: Wie simuliert man ein "submit"? (https://www.delphipraxis.net/31619-indy-wie-simuliert-man-ein-submit.html)

Dani 11. Okt 2004 19:35


Indy: Wie simuliert man ein "submit"?
 
Hi!

mit folgendem HTML Code kann man die Verbindung meines Routers ein- und ausschalten:
Code:
<script language=JavaScript>
function pppoeAction(F,I)
{
   d =parseInt(I.value, 10);
   F.pppoeAct.value = I;
   F.submit();
}
</script>
...

<input type=button value=' Connect ' onClick='pppoeAction(this.form,1)'>
            <input type=button value=' Disconnect ' onClick='pppoeAction(this.form,2)'>
Meine Frage: Wie lässt sich das mit TIdHTTP umsetzen? Geht das mit POST?

endeffects 12. Okt 2004 07:01

Re: Indy: Wie simuliert man ein "submit"?
 
entweder mit IdHttp.post oder IdHttp.get
je nachdem was unter <form action=..> angegeben wurde
kannst du das formular entsprechend übertragen

du kannst dir ja mal einen packetsniffer/proxy
runterladen und dir anschauen wie das packet geformt werden muss

http://xk72.com/charles/index.html
http://etherdetect.com

Dani 12. Okt 2004 20:48

Re: Indy: Wie simuliert man ein "submit"?
 
Das Packet? :shock:

Also klar ist:
- Per POST werden die Formulardaten übertragen
- Das Formular hat eine Variable "pppoeAct" mit dem Wert 1 oder 2

Aber wie formuliere ich die POST-Parameter richtig? Hat This.Form.submit() nicht für jedes Formular die gleiche Funktionalität?

Mystic 12. Okt 2004 22:05

Re: Indy: Wie simuliert man ein "submit"?
 
Zitat:

Zitat von endeffects
du kannst dir ja mal einen packetsniffer/proxy
runterladen und dir anschauen wie das packet geformt werden muss

http://xk72.com/charles/index.html
http://etherdetect.com

Ein sehr guter, kostenloser (Open Source) Packet-Sniffer ist Packetyzer. Er basiert auf Ethereal.

endeffects 12. Okt 2004 23:31

Re: Indy: Wie simuliert man ein "submit"?
 
also dani ich weiß leider nicht in wie weit du das formular nun vollständig
kopiert hast, sollte es sich dabei lediglich um den button und den entsprechenden
wert handeln ist das ganze relativ simpel

[delphi]
var
IdHTTP: TIdHTTP;
PostDataStream : TStringStream;
ParamData : TStringStream;
begin
IdHTTP:= TIdHTTP.Create(nil);
PostDataStream := TStringStream.Create('');
ParamData := TStringStream.Create('');

ParamData.WriteString('hier der post kram der vom forumlar übergeben wrird z.b. a=1&b=2&c=2');
try
IdHTTP.Post('hier die adresse deines routers', ParamData, PostDataStream);
except
//nix
end;

Dani 13. Okt 2004 19:04

Re: Indy: Wie simuliert man ein "submit"?
 
Zitat:

'hier der post kram der vom forumlar übergeben wrird z.b. a=1&b=2&c=2'
Was da genau rein muss, ist was ich eigentlich wissen wollte, aber auf die Idee mit dem Packetsniffer bin ich nicht gekommen :P Dankö!


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