mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-12-18 01:40:49 +01:00
67 lines
1.4 KiB
ObjectPascal
67 lines
1.4 KiB
ObjectPascal
unit frmmain;
|
|
|
|
interface
|
|
|
|
uses
|
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, IPPeerClient, REST.Client,
|
|
REST.Authenticator.Basic, Data.Bind.Components, Data.Bind.ObjectScope,
|
|
Vcl.StdCtrls, Vcl.Grids, Vcl.DBGrids, Vcl.ExtCtrls, Vcl.DBCtrls,
|
|
Datasnap.DBClient, System.Net.URLClient, System.Net.HttpClient,
|
|
System.Net.HttpClientComponent, IdBaseComponent, IdComponent, IdTCPConnection,
|
|
IdTCPClient, IdHTTP;
|
|
|
|
type
|
|
TForm1 = class(TForm)
|
|
DSRest: TDataSource;
|
|
CDSRest: TClientDataSet;
|
|
DBNavigator1: TDBNavigator;
|
|
DBGrid1: TDBGrid;
|
|
EURL: TEdit;
|
|
BFetch: TButton;
|
|
Label1: TLabel;
|
|
Label2: TLabel;
|
|
EUserName: TEdit;
|
|
LEPassword: TLabel;
|
|
EPassword: TEdit;
|
|
RestClient: TIdHTTP;
|
|
procedure BFetchClick(Sender: TObject);
|
|
private
|
|
{ Private declarations }
|
|
public
|
|
{ Public declarations }
|
|
end;
|
|
|
|
var
|
|
Form1: TForm1;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
procedure TForm1.BFetchClick(Sender: TObject);
|
|
|
|
Var
|
|
URL : String;
|
|
Response : TMemoryStream;
|
|
|
|
begin
|
|
URL:=EURL.Text;
|
|
if Pos('?',URL)=0 then
|
|
URL:=URL+'?'
|
|
else
|
|
URL:=URL+'&';
|
|
URL:=URL+'fmt=cds';
|
|
Response:=TMemoryStream.Create;
|
|
With RestClient.Request do
|
|
begin
|
|
UserName:=EUserName.Text;
|
|
Password:=EPassword.Text;
|
|
end;
|
|
RestClient.Get(URL,Response);
|
|
Response.Position:=0;
|
|
CDSRest.LoadFromStream(Response);
|
|
end;
|
|
|
|
end.
|