How to use HTTP Client API in Delphi
13,731
Neither one of your examples is technically correct. Your URLs are incomplete, and you are mismanaging your variable names.
Try this instead:
Indy:
procedure TForm1.Start;
var
LHTTP: TIdHTTP;
Params: TStringList;
begin
LHTTP := TIdHTTP.Create;
try
Params := TStringList.Create;
try
Params.Add('test=' + Path);
Memo1.Lines.Text := LHTTP.Post('http://www.server.com', Params);
finally
Params.Free;
end;
finally
LHTTP.Free;
end;
end.
NetHTTP:
procedure TForm1.Start;
var
LHTTP: TNetHTTPClient;
Params: TStringList;
begin
LHTTP := TNetHTTPClient.Create(nil);
try
Params := TStringList.Create;
try
Params.Add('test=' + Path);
Memo1.Lines.Text := LHTTP.Post('http://www.server.com', Params).ContentAsString;
finally
Params.Free;
end;
finally
LHTTP.Free;
end;
end;
Author by
cyberdude
Updated on August 03, 2022Comments
-
cyberdude almost 2 years
How to use NetHTTPClient instead of IdHTTP?
My NetHTTPClient code:
var LHTTPClient: THTTPClient; P : TStrings; begin LHTTPClient := THTTPClient.Create; P := TStringList.Create; try Params.Add('test=' + Path); Memo1.Lines.Text := NetHTTPClient1.Post('www.server.com', P).ContentAsString(); finally LHTTPClient.Free; end; end;
My IdHTTP code:
procedure TForm1.Start; var lHTTP: TIdHTTP; P: TStringList; begin lHTTP := TIdHTTP.Create(nil); P := TStringList.Create; try Params.Add('test=' + Path); try Reply.Text := lHTTP.Post('www.server.com', P); if AnsiContainsStr(Reply.Text, 'good') then begin Memo1.Lines.Add(Path); end; finally end; end; end.