Zaloguj się na stronie internetowej z Delphi
Chciałbym zapytać, czy ktoś był na tyle uprzejmy, aby wyjaśnić mi, jak zalogować się na stronie internetowej z aplikacji Delphi. Wszystkie przykłady, które tu znalazłem, okazały się dla mnie bezużyteczne lub robię coś złego. Mam dość wyszukiwania i kodu, który nie działa.
Nie ma żadnego komunikatu o błędzie, nawet dostaję kod strony do Memo, ale wydaje się, że jest to kod ze strony logowania (nie strony [dashboard] konta) - wydaje się, że ten kod w ogóle nie może przekazać auth i nie wiem dlaczego.
Co jest nie tak w tym kodzie:
procedure Login;
var
HTTP: TIdHTTP;
Param: TStringList;
S: String;
begin
HTTP := TIdHTTP.Create(nil);
HTTP.CookieManager := Main_Form.CookieManager;
Param := TStringList.Create;
Param.Clear;
Param.Add('login=example');
Param.Add('password=example');
try
HTTP.Get ('http://www.filestrum.com/login.html');
HTTP.Post('http://www.filestrum.com/login.html', Param);
S := HTTP.Get ('http://www.filestrum.com/?op=my_account');
Main_Form.Memo2.Lines.Add(S);
finally
HTTP.Free;
Param.Free;
end;
end;
lub z tą wersją:
procedure Login;
var
HTTP: TIdHTTP;
S: String;
begin
HTTP := TIdHTTP.Create(nil);
HTTP.CookieManager := Main_Form.CookieManager;
HTTP.Request.BasicAuthentication := True;
HTTP.Request.Username := 'example';
HTTP.Request.Password := 'example';
HTTP.AllowCookies := True;
HTTP.HandleRedirects := True;
S := HTTP.Get ('http://www.filestrum.com/?op=my_account');
Main_Form.Memo2.Lines.Add(S);
end;
Użyto Delphi XE2 i nie ma możliwości uruchomienia tego kodu i logowania. To samo z demo XE3. Jak już powiedziałem, jestem naprawdę zmęczony, szukając jakiegoś rozwiązania, marnując dni na nic i nic.
Proszę, chłopaki, trochę pomocy tutaj. Naprawdę tego potrzebuję.