Sample code for 30+ languages & platforms
Delphi ActiveX Requires Chilkat v11.0.0+

Example: Http.HttpReq method

Demonstrates how to call the HttpReq method.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
http: TChilkatHttp;
json: TChilkatJsonObject;
req: TChilkatHttpRequest;
resp: TChilkatHttpResponse;

begin
success := 0;

http := TChilkatHttp.Create(Self);
success := 0;

//  This example will send an HTTP POST with the body of the HTTP request containing JSON.

//  Create the following JSON: { "name": "Harry", "state": "FL" }

json := TChilkatJsonObject.Create(Self);
json.UpdateString('name','Harry');
json.UpdateString('state','FL');

//  Specify the details of the request
req := TChilkatHttpRequest.Create(Self);

req.HttpVerb := 'POST';
req.ContentType := 'application/json';
req.LoadBodyFromString(json.Emit(),'utf-8');

//  Send the charset attribute in the HTTP request header.
req.SendCharset := 1;
req.Charset := 'utf-8';

//  Send the POST
//  You can send the POST to the URL below.  
//  The response will contain the raw body of the request that was sent.
//  (i.e. everything except the HTTP request header).

resp := TChilkatHttpResponse.Create(Self);
success := http.HttpReq('https://www.chilkatsoft.com/echo_request_body.asp',req.ControlInterface,resp.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(http.LastErrorText);
    Exit;
  end;

//  Examine the HTTP request header we sent:
Memo1.Lines.Add(http.LastHeader);

//  The response body contains the raw content of the HTTP request body we sent.
Memo1.Lines.Add(resp.BodyStr);

//  Sample output:

//  POST /echo_request_body.asp HTTP/1.1
//  Host: www.chilkatsoft.com
//  Content-Type: application/json; charset=utf-8
//  Content-Length: 29
//  
//  
//  {"name":"Harry","state":"FL"}