Autor Beitrag
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: Fr 24.12.10 03:05 
Hallo nochmal,
kann es Vielleicht daran liegen, dass ich keine Cookies gesetzt habe beim Login und deswegen immer die Meldung bekomme "Die E-Mail-Adresse oder das Kennwort ist falsch. Wiederholen Sie den Vorgang."?

Edit: Weil durch die Weiterleitung verliere ich doch wieder die Logindaten wenn keine Cookies gesetzt sind oder?

MfG
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: Do 30.12.10 21:27 
Hallo nochmal,
ich hab mal testhalber versucht mich bei wer-kennt-wen.de einzuloggen, da diese ja auch über SSL verbindung funktioniert.
Alles funktioniert soweil, nur ab dem zweiten aufruf von IdHTTP.Get oder IdHTTP.Post bekomme ich folgende fehlermeldung:
ausblenden Delphi-Quelltext
1:
HTTP/1.0 403 Forbidden.					


Wie kann ich das Problem umgehen?

Danke schonmal.

MfG
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: Fr 31.12.10 18:19 
Weiss denn keiner ne lösung?
Ich denke mal, weil IdHTTP das Protokoll HTTP/1.0 verwendet, wie kann ich Protokoll HTTP/1.1 verwenden?

MfG
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19312
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 31.12.10 19:14 
user profile iconbruce185 hat folgendes geschrieben Zum zitierten Posting springen:
Ich denke mal, weil IdHTTP das Protokoll HTTP/1.0 verwendet, wie kann ich Protokoll HTTP/1.1 verwenden?
Wenn du in die Statuscodedefinitionen des W3C geschaut hättest, dann hättest du dort gelesen, dass das damit nichts zu tun hat. Der Server hat die Anfrage durchaus verstanden, er weigert sich aber. Weil die Autorisation fehlt. Und dieser Statuscode sagt, dass eine Standardauthentifizierung hier nicht ausreicht. Klar, es muss ja auch ein Login erfolgen.

Heißt:
Du rufst das Seiten auf, die bereits vorher einen Login erfordern.
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: Fr 31.12.10 19:58 
Danke Dir.
Aber irgendwas stimmt da nicht, hab das mal so versucht:
ausblenden Delphi-Quelltext
1:
2:
3:
Quelltext := IdHTTP.Post('https://secure.wer-kennt-wen.de/login/index',Params);
Quelltext := IdHTTP.Get('http://www.wer-kennt-wen.de');
Quelltext := IdHTTP.Post('https://secure.wer-kennt-wen.de/login/index',Params);


damit ging es einmal, nachdem ich mein Programm nochmal neu geöffnet habe und nochmal versucht habe, dann bekomme ich wieder diesen fehler.

MfG
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19312
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 31.12.10 20:02 
Ich müsste mir das irgendwann mal anschauen, aber ich habe zu wenig Zeit. Fehlen tut da ja noch die Behandlung des Inhalts. Nacheinander so aufrufen geht nicht immer, weil da manchmal Session-IDs oder so benötigt werden usw.
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: Fr 31.12.10 20:43 
Danke.
Werden die Sessions nicht automatisch hinzugefügt?
Hier mal die Postdaten aus FireFox:

ausblenden Quelltext
1:
2:
3:
4:
5:
loginName          *****************
pass               *****************
x                  30
y                  7
logIn              1


Request Header:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
(Request-Zeile)   POST /login/index HTTP/1.1
Host            secure.wer-kennt-wen.de
User-Agent   Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.13) Gecko/20101203 YFF35 Firefox/3.6.13
Accept            text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language   de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding   gzip,deflate
Accept-Charset   ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive   115
Connection   keep-alive
Referer            http://www.wer-kennt-wen.de/
Cookie            __utma=171430438.851816188.1293630997.1293741758.1293819175.5; __utmz=171430438.1293630997.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); WKWSID=1203; WKWSESSID=32016f562ac66dd9c3719c040163f6c1; __utmb=171430438.1.10.1293819175; __utmc=171430438; __utmv=
Content-Type   application/x-www-form-urlencoded
Content-Length   65


Response Header:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
(Status-Zeile)   HTTP/1.1 302 Found
Server            nginx
Date            Fri, 31 Dec 2010 18:13:09 GMT
Content-Type   text/html
Connection   keep-alive
P3P            CP="CAO OUR"
Expires            Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control   no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma            no-cache
Set-Cookie   WKWSESSID=2dd8971d9edcbd5e4466a6815b779545; path=/; domain=.wer-kennt-wen.de
Location            http://www.wer-kennt-wen.de/start
Content-Length   0


und hier mal mein Code:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
var
  Quelltext: string;
  Params: TStringList;
begin
  LoadOpenSSLLibrary;

  Params := TStringList.Create;

  //Postdaten hinzufügen
  Params.Add('loginName='+edtEmail.Text);
  Params.Add('pass='+edtPassword.Text);
  Params.Add('logIn=1');

  IdHTTP.Request.Host := 'secure.wer-kennt-wen.de';
  IdHTTP.Request.UserAgent := 'Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.13) Gecko/20101203 YFF35 Firefox/3.6.13';
  IdHTTP.Request.Accept := 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
  IdHTTP.Request.AcceptLanguage := 'de-de,de;q=0.8,en-us;q=0.5,en;q=0.3';
  IdHTTP.Request.AcceptEncoding := 'gzip,deflate';
  IdHTTP.Request.AcceptCharSet := 'ISO-8859-1,utf-8;q=0.7,*;q=0.7';
  IdHTTP.Request.Connection := 'keep-alive';
  IdHTTP.Request.Referer := 'http://www.wer-kennt-wen.de/';
  IdHTTP.Request.ContentType := 'application/x-www-form-urlencoded';
  IdHTTP.Request.ContentLength := 65;

  Quelltext := IdHTTP.Get('http://www.wer-kennt-wen.de');
  Quelltext := IdHTTP.Post('https://secure.wer-kennt-wen.de/login/index',Params);

  Params.Free;


Falls jemand Zeit hat und mir eventuell helfen könnte, wäre ich sehr dankbar dafür.

MfG
bruce185 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

winXP
D7 Ent
BeitragVerfasst: So 02.01.11 08:14 
Hallo nochmal,
bei den Post Daten werden auch 2 Werte gesendet, x und y, diese jedoch nicht im Quelltext auf der Startseite von wer-kennt-wen.de zusehen ist.
Die Werte x und y sind immer anders und ich weiss nicht, wie ich diese auslesen soll, da diese nicht zufinden sind.

Wenn ich HttpFox von Mozilla FireFox verwende, werden diese Daten x und y auch mit gesendet, sobald ich mich einlogge.
Mir ist auch aufgefallen, wenn ich mich einlogge und sofort den HttpFox Stoppe, dann sind die Werte x und y auf 0, wenn ich HttpFox wieder starte und mich einlogge und es fertig laufen lasse, dann sind die Werte x und y befüllt.
Werden diese Werte erst irgendwo bei der Weiterleitung gesendet oder so?

Ich denke, dass es was damit zu tun hat oder?

MfG