Delphi DLL
Delphi DLL
HTTPS GET URL with URL Encoded Query Params
See more HTTP Examples
Creates a URL with URL encoded query params, and sends an HTTPS GET to the URL.Chilkat Delphi DLL Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, StringBuilder;
...
procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
sbUrl: HCkStringBuilder;
sbValue: HCkStringBuilder;
http: HCkHttp;
responseBody: PWideChar;
begin
success := False;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Create a URL with URL-encoded query params.
sbUrl := CkStringBuilder_Create();
CkStringBuilder_Append(sbUrl,'https://www.example.com/something?');
// If we know a query param value does not have any special chars requiring URL encoding,
// just add it. In this case, there is no need to URL encode "123" because "123" url encoded is still just "123".
CkStringBuilder_Append(sbUrl,'abc=123&xyz=');
sbValue := CkStringBuilder_Create();
CkStringBuilder_Append(sbValue,'this is a test');
CkStringBuilder_Append(sbUrl,'msg=');
CkStringBuilder_Append(sbUrl,CkStringBuilder__getEncoded(sbValue,'url','utf-8'));
// sbUrl contains: https://www.example.com/something?abc=123&xyz=msg=this%20is%20a%20test
Memo1.Lines.Add(CkStringBuilder__getAsString(sbUrl));
// Send the GET request and get the response body, which is assumed to be text of some sort (HTML, XML, JSON, etc.)
// (Chilkat automatically decompresses gzipped responses)
http := CkHttp_Create();
responseBody := CkHttp__quickGetStr(http,CkStringBuilder__getAsString(sbUrl));
if (CkHttp_getLastMethodSuccess(http) = False) then
begin
Memo1.Lines.Add(CkHttp__lastErrorText(http));
Exit;
end;
Memo1.Lines.Add('Response Body:');
Memo1.Lines.Add(responseBody);
CkStringBuilder_Dispose(sbUrl);
CkStringBuilder_Dispose(sbValue);
CkHttp_Dispose(http);
end;