Sample code for 30+ languages & platforms
Delphi ActiveX

HTTP GET with utf-8 URL Encoded Query Params

See more HTTP Examples

Demonstrates how to build URLs where query param values can be either URL encoded from the utf-8 representation, or from another charset such as windows-1252.

Note: This example uses the new DecodeAndAppend method added in Chilkat v9.5.0.87.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
nameWindows1252UrlEncoded: WideString;
sb1: TChilkatStringBuilder;
http: TChilkatHttp;
sbUrl: TChilkatStringBuilder;
responseBody: WideString;

begin
success := 0;

// We have the string "MÆRSK".

// This is the URL encoding of the windows-1252 representation.
nameWindows1252UrlEncoded := 'M%C6RSK';

sb1 := TChilkatStringBuilder.Create(Self);
success := sb1.DecodeAndAppend(nameWindows1252UrlEncoded,'url','windows-1252');

http := TChilkatHttp.Create(Self);

// Here's how to send an HTTP GET where the param is the utf-8 representation that is URL encoded.
// For example:  https://www.chilkatsoft.com/something?name=M%C3%A6RSK

sbUrl := TChilkatStringBuilder.Create(Self);

sbUrl.Append('https://www.chilkatsoft.com/something?name=');
sbUrl.Append(sb1.GetEncoded('url','utf-8'));
Memo1.Lines.Add(sbUrl.GetAsString());

responseBody := http.QuickGetStr(sbUrl.GetAsString());

// Here's how to send an HTTP GET where the param is the windows-1252 representation that is URL encoded.
// For example:  https://www.chilkatsoft.com/something?name=M%E6RSK

sbUrl.Clear();
sbUrl.Append('https://www.chilkatsoft.com/something?name=');
sbUrl.Append(sb1.GetEncoded('url','windows-1252'));
Memo1.Lines.Add(sbUrl.GetAsString());

responseBody := http.QuickGetStr(sbUrl.GetAsString());
end;