Problem z logowaniem - HTTP/1.0 401 Unauthorized

0

Mam problem z logowaniem na stronkę. Mianowicie jak normalnie wchodzę w IE czy FF to Od razu pojawia się okno logowania (tzn. login i hasło). Strona zrobiona w php (niestety nie moge zmienić innego logowania, gdyż to nie mój serwer). Chciałbym zrobić w delphi automatyczne logowanie (tzn. że po zalogowaniu, kliknie w jakiś tam link i tyle ;]). No i na początek zrobiłem samo "get", aby otrzymać kod źrółowy i przeanalizować źródło, gdzie dodać to hasło i login. Kodzik:

procedure TForm1.Button1Click(Sender: TObject);
var source: TStringStream;
begin
  source:=TStringStream.Create('');
  IdHTTP1.Get('http://217.153.176.194/pilot275/index.php',source);
  Memo1.Lines.Text:=Source.Datastring;
end;

I wyskakuje błąd "HTTP/1.0 401 Unauthorized" (nie dziwię się :D). I teraz mam pytanie, jak zalogować się? Za pomocą czego wpisać hasło i login? I jak "urzymać" to połączenie? Bo np. po zalogowaniu chcę, aby weszło mi na stronę www.jakasstrona.pl/index.php?action=startstop&pilot=on i "rozłączyło" się :)
Z góry SERDECZNIE DZIĘKUJĘ ZA POMOC!

0
procedure TForm1.Button1Click(Sender: TObject);
var source: TStringStream;
begin
  source:=TStringStream.Create('');
  IdHTTP1.Request.Username := 'user'; 
  IdHTTP1.Request.Password := 'hasełko';
  IdHTTP1.Get('http://217.153.176.194/pilot275/index.php',source);
  Memo1.Lines.Text:=Source.Datastring;
end;

powinno pomóc

0
angel2953 napisał(a)
procedure TForm1.Button1Click(Sender: TObject);
var source: TStringStream;
begin
  source:=TStringStream.Create('');
  IdHTTP1.Request.Username := 'user'; 
  IdHTTP1.Request.Password := 'hasełko';
  IdHTTP1.Get('http://217.153.176.194/pilot275/index.php',source);
  Memo1.Lines.Text:=Source.Datastring;
end;

powinno pomóc

To samo :( Ten sam błąd... A dane wpisałem poprawne...

0

No więc jeśli chcesz się zlogować to musisz spojrzeć w źródło strony na której chcesz się logować, sprawdzasz jak się nazywają poszczególne pola formularza (login, hasło) i później możesz zalogować się przez idHTTP. Przykładowy kodzik:

var
wejscie, wyjscie: TStringStream;
begin
  wejscie := TStringStream.Create('');
  wyjscie := TStringStream.Create('');
  wejscie.WriteString('login=twojlogin&haslo=twojehaslo');
  idHTTP1.Post('http://adresservera.pl/skrypt.php', wejscie, wyjscie);
 

Od tego momentu powinieneś być zalogowany... ;)

Aha ... jeszcze Content Type idHTTP'a musisz ustawić na "application/x-www-form-urlencoded". ;)

0
-=arhi=- napisał(a)

No więc jeśli chcesz się zlogować to musisz spojrzeć w źródło strony na której chcesz się logować, sprawdzasz jak się nazywają poszczególne pola formularza (login, hasło) i później możesz zalogować się przez idHTTP. Przykładowy kodzik:

var
wejscie, wyjscie: TStringStream;
begin
  wejscie := TStringStream.Create('');
  wyjscie := TStringStream.Create('');
  wejscie.WriteString('login=twojlogin&haslo=twojehaslo');
  idHTTP1.Post('http://adresservera.pl/skrypt.php', wejscie, wyjscie);
 

Od tego momentu powinieneś być zalogowany... ;)

Aha ... jeszcze Content Type idHTTP'a musisz ustawić na "application/x-www-form-urlencoded". ;)

No tak, tylko, że jak wchodzę przez IE czy FF to wyskakuje mi okienko o login i hasło (nie ma tak, że jest jakiś formularz na stronie). Przykładowa strona: http://217.153.176.194/pilot275/index.php. Tylko jak teraz wprowadzić ten login i hasło? :( Ale dzięki za chęci :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1