Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Session aspx (https://www.delphipraxis.net/125454-session-aspx.html)

badenixe63 6. Dez 2008 11:27


Session aspx
 
Hallo Leute,

ich möchte gerne mit einem HTTP Server kommunizieren, der aber eine von asp erstellte Session verwendet. Das heißt um an die Session-ID heranzukommen muss ich erstmal auf der Hauptseite das Formular ausfüllen und abschicken.

Dort gibt es aber neben den Eingaben 'name' und 'passwort' auch noch '__viewstate' und so. Die sollen wohl asp was über den Zustand der Formulare und so weiter mitteilen. Muss ich die wirklich erstmal dynamisch aus der html datei holen und dann beim senden der login daten mitschicken oder kann ich die auch hardcoded mit ins Programm übernehmen ?

Ich benutze Turbo Delphi Explorer 2006 & Indy 9

Viele Grüße

badenixe63

mkinzler 6. Dez 2008 11:37

Re: Session aspx
 
Was für ein System auf den Server verwendet wird ist eigentlich egal.
Sessions kapseln ja Sitzungen also Verbindungen, deshalb muss du diese dynamisch aufbauen und kannst diese nicht fest im Programm hinterlegen

badenixe63 6. Dez 2008 16:39

Re: Session aspx
 
Schon klar, das system von Sessions ist klar, hab ich mit php schon mal selbst gebaut.

Allerdings hab ich noch nie was mit ASP.Net gemacht. Jetzt möchte ich mich auf einer mit ASP gemachten Seite einloggen. Dort gibt es ein Formular mit 'name' und 'passwort' und Absende-Button. Und dazu noch zwei 'hidden-inputs' in denen die Variablen '__viewstate' und '__eventvalidation' mitgesendet werden. Die sind ewig lange scheinbar sinnlose Zeichenketten.

Ich hab das mal gegoogelt und scheinbar werden da informationen für ASP mitgesendet über den 'Zustand' des Formulars. Ganz verstanden hab ich das nicht. Jetzt möchte ich einfach gerne wissen ob ich die einfach vom Quelltext der Seite übernehmen kann und hardcoded einbauen kann, oder ob ich die immer dynamisch vom Server holen muss ??

Viele Grüße

badenixe63

mkinzler 6. Dez 2008 16:43

Re: Session aspx
 
Sind diese immer gleich?

badenixe63 6. Dez 2008 17:31

Re: Session aspx
 
kann ich leider nicht sicher sagen, deswegen hatte ich gehofft, dass sich hier vllt. ein ASP-Versteher kurz dazu äußern könnte...

also die ersten paar Zeichen sind bei mir immer gleich, ich hatte aber keinen bock mir immer den kompletten String durchzulesen. Ich weiß auch nicht, ob da informationen bezüglich User-Agent, IP oder sonst irgendetwas drin sind, die von demjenigen abhängig sind, der sich anmeldet.

Code:
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTk5Njg5Njk3OA9kFgJmD2QWBAIBD2QWAgICDxYCHgRUZXh0BYQLPHNjcmlwdCBsYW
5ndWFnZT0iSmF2YVNjcmlwdCIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCjwhLS0NCi8vY29uZmlndXJ
hdGlvbg0KT0FTX3VybCA9J2h0dHA6Ly9hdXN0cmlhMS5hZHZlcnNlcnZl
Lm5ldC9SZWFsTWVkaWEvYWRzLyc7DQpPQVNfbGlzdHBvcyA9ICdUb3AsTWlkZGxlMSxSaWdodDEsUG9za
XRpb24xJzsNCk9BU19xdWVyeSA9ICc/JzsNCk9BU19zaXRlcGFnZSA9I
Cdwb3dlci5hdC9OZXdzX0luZm9zZWl0ZW5fSGlsZmUnOw0KLy9lbmQgb2YgY29uZmlndXJhdGlvbg0KT0
FTX3ZlcnNpb24gPSAxMDsNCk9BU19ybiA9ICcwMDEyMzQ1Njc4OTAnOy
BPQVNfcm5zID0gJzEyMzQ1Njc4OTAnOw0KT0FTX3JuID0gbmV3IFN0cmluZyAoTWF0aC5yYW5kb20oKSk
7IE9BU19ybnMgPSBPQVNfcm4uc3Vic3RyaW5nICgyLCAxMSk7DQpmdW5
jdGlvbiBPQVNfTk9STUFMKHBvcykgeyANCmRvY3VtZW50LndyaXRlKCc8QSBIUkVGPSInICsgT0FTX3Vy
bCArICdjbGlja19ueC5hZHMvJyArIE9BU19zaXRlcGFnZSArICcvMScg
KyBPQVNfcm5zICsgJ0AnICsgT0FTX2xpc3Rwb3MgKyAnIScgKyBwb3MgKyBPQVNfcXVlcnkgKyAnIiBUQ
VJHRVQ9X3RvcD4nKTsNCmRvY3VtZW50LndyaXRlKCc8SU1HIFNSQz0iJ
yArIE9BU191cmwgKyAnYWRzdHJlYW1fbnguYWRzLycgKyBPQVNfc2l0ZXBhZ2UgKyAnLzEnICsgT0FTX3
JucyArICdAJyArIE9BU19saXN0cG9zICsgJyEnICsgcG9zICsgT0FTX3
F1ZXJ5ICsgJyIgQk9SREVSPTAgQUxUPSJDbGljayEiPjwvQT4nKTsNCn0NCi8vLS0+DQo8L3NjcmlwdD4
NCjxzY3JpcHQgbGFuZ3VhZ2U9IkphdmFTY3JpcHQxLjEiIHR5cGU9InR
leHQvamF2YXNjcmlwdCI+DQo8IS0tDQpPQVNfdmVyc2lvbiA9IDExOw0KaWYgKG5hdmlnYXRvci51c2Vy
QWdlbnQuaW5kZXhPZignTW96aWxsYS8zJykgIT0gLTEpDQpPQVNfdmVy
c2lvbiA9IDEwOw0KaWYgKE9BU192ZXJzaW9uID49IDExKQ0KZG9jdW1lbnQud3JpdGUoJzxTQycrJ1JJU
FQgTEFOR1VBR0U9SmF2YVNjcmlwdDEuMSBTUkM9IicgKyBPQVNfdXJsI
CsgJ2Fkc3RyZWFtX21qeC5hZHMvJyArIE9BU19zaXRlcGFnZSArICcvMScgKyBPQVNfcm5zICsgJ0AnIC
sgT0FTX2xpc3Rwb3MgKyBPQVNfcXVlcnkgKyAnIj48XC9TQ1JJUFQ+Jy
k7DQovLy0tPg0KPC9zY3JpcHQ+DQo8c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiB0eXBlPSJ0ZXh
0L2phdmFzY3JpcHQiPg0KPCEtLSANCmRvY3VtZW50LndyaXRlKCcnKTs
NCmZ1bmN0aW9uIE9BU19BRChwb3MpIHsNCmlmIChPQVNfdmVyc2lvbiA+PSAxMSAmJiB0eXBlb2YoT0FT
X1JJQ0ghPSd1bmRlZmluZWQnKSkNCk9BU19SSUNIKHBvcyk7DQplbHNl
DQpPQVNfTk9STUFMKHBvcyk7DQp9DQovLy0tPg0KPC9zY3JpcHQ+DQo8IS0tIE9BUyBTRVRVUCBlbmQgL
S0+DQpkAgMPZBYGAgEPFgIfAAXPAzxhIGhyZWY9IlN0YXJ0LmFzcHgiP
jxpbWcgc3JjPSJuaW1nL3N0YXJ0LmdpZiIgLz48L2E+PGEgaHJlZj0iczcuYXNweCI+PGltZyBzcmM9Im
5pbWcvbmV3c3NlbC5naWYiIC8+PC9hPjxhIGhyZWY9IlN1cHBvcnRlcl
BhZ2VOLmFzcHgiPjxpbWcgc3JjPSJuaW1nL3N1cHBzZWwuZ2lmIiAvPjwvYT48YSBocmVmPSJGb3J1bS5
hc3B4Ij48aW1nIHNyYz0ibmltZy9mb3J1bXNlbC5naWYiIC8+PC9hPjx
hIGhyZWY9IlN0YXRzTmV3LmFzcHgiPjxpbWcgc3JjPSJuaW1nL3N0YXRzc2VsLmdpZiIgLz48L2E+PGEg
aHJlZj0iczE3LmFzcHgiPjxpbWcgc3JjPSJuaW1nL2hpbGZlc2VsLmdp
ZiIgLz48L2E+PGEgaHJlZj0iT3duUHJvZmlsZU4uYXNweCI+PGltZyBzcmM9Im5pbWcvcHJvZmlsZXNlb
C5naWYiIC8+PC9hPjxhIGhyZWY9IlN1cHBvcnROLmFzcHgiPjxpbWcgc
3JjPSJuaW1nL3N1cHBvcnRzZWwuZ2lmIiAvPjwvYT5kAgMPFgIfAAU1PGEgaHJlZj0iTG9naW4uYXNweC
I+PGltZyBzcmM9Im5pbWcvbG9naW4uZ2lmIiAvPjwvYT5kAgUPZBYCAg
EPZBYMZg8WAh4HVmlzaWJsZWhkAgIPFgIfAWcWBAIBDxYCHwFoZAIFDxYCHwFoZAIEDxYCHwFoFgICAQ8
WAh8BaGQCBg8WAh8BaGQCCA8WAh8BaGQCCg8WAh8BaGQYAQUeX19Db25
0cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFKGN0bDAwJENvbnRlbnRQbGFjZUhvbGRlcjEkQ180JEdv
VG9HYW1lQ0KRgLjNV7t1L0dgELtcGv2IcyGseA==" />
Code:
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBALK9vuXBwLVoZT7BQLxrLbgBgKY98T2AX8Rlj2SeF6IDGwxD84XnuS7HC3C" />
Viele Grüße

badenixe63

[edit=Matze]Zeilenumbrüche eingefügt, um das Layout zu erhalten. MfG, Matze[/edit]

jfheins 6. Dez 2008 18:02

Re: Session aspx
 
Da dieser viewstate Parametert jagenau das sit, ,was asp.net dynamisch macht, solltest du ihn auslesen und mitschicken - wie auch schon im Beitrag #2 gesagt:
Zitat:

Zitat von mkinzler
Was für ein System auf den Server verwendet wird ist eigentlich egal.
Sessions kapseln ja Sitzungen also Verbindungen, deshalb muss du diese dynamisch aufbauen und kannst diese nicht fest im Programm hinterlegen

P.S. diese scheinbar sinnlosen, langen Zeicheketten dürften base64-encoded sein (erkennt man an den Gleichheitszeichen am Ende) vll. bekommt du etwas heraus, wenn du es dekodiert ;)
(Hab ich grad mal gemacht, scheint doch eher unwichtig zu ein ...)

badenixe63 7. Dez 2008 00:12

Re: Session aspx
 
ok, wie komme ich denn am besten an die viewstate inputs ran? denn das mit String Funktionen da rauszuschnippeln kommt mir doch etwas aufwendig vor...

gibts in delphi irgendwie so HTML DOM Funktionen wie z.B. in Javascript? window.getElementsByTagName("input") oder so ?

mkinzler 7. Dez 2008 10:01

Re: Session aspx
 
Wenn du dich dem Parser eines Browsers bemächtigst.

badenixe63 7. Dez 2008 10:52

Re: Session aspx
 
meint ihr sowas:

http://www.tiaon.com/wordpress/delphi-htmlparser/

mkinzler 7. Dez 2008 11:21

Re: Session aspx
 
Oder einfach in TWebBrowser laden


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:11 Uhr.
Seite 1 von 2  1 2      

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