Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi automatischen anmelden an Webseite https (https://www.delphipraxis.net/64457-automatischen-anmelden-webseite-https.html)

Klaus01 3. Mär 2006 21:11


automatischen anmelden an Webseite https
 
Guten Abend,

ich steh vor einem Problem.
In dem Projekt will ich Informationen von einer WebSeite (https)
in eine Stringlist schreiben. Die Daten werden von einem jsp generiert
und bereitgestellt.

Auf der Webseite muß ich mich bevor ich Daten abholen kann anmelden.
Ich dachte eigentlich das ich den Username und das Passwort in dem
Aufruf der Webseite aufnehmen könnte. So z.B.
https://username:passwort@server:8443/nms/alarms.jsp
Da geht aber nicht.

Auch wenn ich den Usernamen und das Passwort in dem OI bei
idhttp.request eintrage, kann ich mich nicht auf die Webseite anmelden.

Hier mein Sourcecode:

alarm ist vom Typ TidHTTP

SSL mache ich mit dem object TIdSSLIOHandlerSocket mit
folgenden Einstellungen:
SSLOptions.Method = sslvSSLv23
SSLOptions.Mode = sslmClient
SSLOptions.VerifyMode = []
SSLOptions.VerifyDepth = 2


Delphi-Quellcode:
function TForm1.getAlarms(server:String;port:Integer):Boolean;
VAR
  stringlist: TStringList;
  i:Byte;
  found:Boolean;

begin
  stringlist:=TstringList.Create;
  alarm.Host:=server;
  alarm.Port:=port;
  try
   stringlist.Text:=alarm.get('https://192.168.1.20:8443/nms/alarms.jsp');

   // alarmSessionID ermitteln jsessionid
   i:=0;
   found:=false;
   WHILE not found AND (i <= stringlist.Count -1) DO
     begin
        found:= pos('jsessionid',stringlist.Strings[i]) <> 0;
        if found then
          begin
            alarmSessionID:=copy(stringlist.Strings[i],pos('jsessionid',stringlist.Strings[i])+11,
                                 length(stringlist.Strings[i]));
            alarmSessionID:=copy(alarmSessionID,1,pos('''',alarmSessionID)-1);
          end;
       inc(i);
     end;

   IF not found then
     begin
       // scan alarms
       FOR i:=1 TO stringlist.Count-1 DO
         begin
           Stringlist.Strings[i]:=Stringlist.Strings[i];
         end;
     end;
Auf der WebSeite werden Username und Passwort so abgefragt:
<input type="text" name="j_username" />

Hat jemand eine Idee wie ich es bewerkstelligen kann
mich vor der Abfrage der Daten(Alarme) auf der WebSeite
automatisch anmelden kann?

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz