Einzelnen Beitrag anzeigen

sonny2007

Registriert seit: 27. Aug 2009
39 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

idhttp + SSL - Post BAdRequest

  Alt 25. Dez 2013, 09:13
Hallo Delphianer ,

ich doktor seit 2 Tagen an folgenden Problem.
Ich möchte mich auf der Seite https://account.guildwars2.com/login anmelden.

Daraufhin erhalte ich ja den Cookie und somit meine Session Id. Nur das Post schlägt schon fehl.
Ich habe die Werte mit Fiddler überprüft.
Auch das Password und die email sind richtig.

Woran kann es liegen das dies immer fehl schlägt ?

Vielen Dank im Voraus.
Gruß sonny

Code:
procedure TForm1.Button2Click(Sender: TObject);
var
  cookie: TIdCookieManager;
  mySSL: TIdSSLIOHandlerSocketOpenSSL;
  lStream: TStringStream;
  Params: TStringList;
  Enc : Tencoding;
begin
  try
    lStream := TStringStream.Create;
    mySSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
    cookie := TidCookieManager.Create(nil);
    enc := TEncoding.Create;


    idhttp1.IOHandler := mySSL;
    idhttp1.CookieManager := cookie;
    idhttp1.AllowCookies := true;
    with idhttp1.request do
    begin
      Accept := '*/*';
      ContentType := 'application/x-www-form-urlencoded';
      CharSet := 'UTF-8';
      AcceptLanguage := 'de-DE';
      AcceptEncoding := 'gzip, deflate';
      UserAgent := 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko';
      Host := 'account.guildwars2.com';
      Connection := 'Keep-Alive';
      CacheControl := 'no-cache';
    end;
    Params := TStringList.Create;
    with Params do
        begin
          Add('email=myemail');
          Add('password=mypassword');
        end;
        enc := CharsetToEncoding(idhttp1.Request.CharSet);
        // Daten senden
        memo1.Lines.Add(idhttp1.Post('https://account.guildwars2.com/login', Params,Enc));
  finally
    FreeAndNil(lStream);
    cookie.Free;
    myssl.Free;
    Params.Free;
  end;
end;

Geändert von sonny2007 (25. Dez 2013 um 22:32 Uhr)
  Mit Zitat antworten Zitat