Seite 1 von 1

LoadFromUrl()

Verfasst: Fr, 18. Jul 2014 8:33
von xdragon2009
Guten Morgen,

wenn ich mich auf einer Internetseite mit Benutzername und Passwort einlogge und dann z. b. einen direkten Link im selben Browserfenster oder in einem neuen Browserfenster öffne, bin ich nach wie vor eingeloggt. Wenn ich mir aber dann den Link mit der Xbase Funktion LoadFromUrl() abrufe, bekomme ich nur den Inhalt, dass ich nicht eingeloggt wäre. Gibt es hier eine Lösung oder geht es einfach nicht?

Viele Grüße

Re: LoadFromUrl()

Verfasst: Fr, 18. Jul 2014 9:28
von brandelh
Du kannst dich nicht mit dem Browser einloggen und dann mit LoadFromUrl() die Sitzung weiter verwenden.
Beides sind komplett getrennte Bereiche. Wenn die Seite JavaScript oder cookies verwendet, bin ich mir nicht sicher ob LoadFromUrl() sich anmelden kann,
aber grundsätzlich musst du so vorgehen:

1. Anmeldebildschirm laden: cHTML := LoadFromUrl("www.MeinanmeldeBildschirm.de")
2. in cHTML die Felder suchen, die für die Anmeldung nötig sind und im HTML code ausfüllen ...
3. aus dem ausgefüllten cHTML Anmeldeformular den POSTSTRING erzeugen (hast du die ASINET, dort gibt es eine Funktion)
4. mit LoadFromURL("www.MeinanmeldeBildschirm.de"... "POST",cPostString...) die Daten übergeben, die Rückgabe speichern !

Dann kommt es darauf an, wie die Werte gespeichert werden, ich habe nie mit cookies gearbeitet und meine Daten immer als hiden vars übergeben (natürlich nicht Kennwort und Userid,
sondern selbst erstellte Sitzungs-IDs.

Re: LoadFromUrl()

Verfasst: Fr, 18. Jul 2014 9:57
von georg
Hallo,


eine andere Möglichkeit ist wget. Du findest meine Klasse zur Verwendung von wget hier: http://www.xbaseforum.de/viewtopic.php? ... get#p87525

Meistens werden bei der Anmeldung entsprechende Cookies generiert, die quasi wie ein "Ausweis" wirken. LoadFromUrl() hat leider mit Cookies nicht viel am Hut, daher verwende ich - wie getippt - wget.

Re: LoadFromUrl()

Verfasst: Fr, 18. Jul 2014 12:37
von xdragon2009
Hallo euch beiden,

die Lösung von Georg funktioniert wunderbar, wobei ich persönlich den Weg von Hubert eleganter finde, aber auch mit mehr Programmeiwand verbunden ist :-).

Vielen Dank für die beiden Lösungswege.