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

Example: Http.HttpSb method

Shows how to use the HttpSb method to send an HTTP POST request with a StringBuilder as the request body. The example sends the following request:
POST /echo_request_body.asp HTTP/1.1
Host: chilkatsoft.com
Accept: */*
Accept-Encoding: gzip
Content-Type: application/json
Content-Length: 26

{"greeting":"Hello World"}

Also see: Chilkat Http Default and Auto-Filled Headers

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oHttp
LOCAL oSb
LOCAL cUrl
LOCAL oResp

nSuccess := 0

oHttp := CreateObject("Chilkat.Http")
nSuccess := 0

oSb := CreateObject("Chilkat.StringBuilder")
oSb:Append('{"greeting":"Hello World"}')

//  This URL echoes the contents of the request body, letting us view it.
cUrl := "https://chilkatsoft.com/echo_request_body.asp"

//  Send a POST with the contents of the StringBuilder in the HTTP request body.
oResp := CreateObject("Chilkat.HttpResponse")
nSuccess := oHttp:HttpSb("POST", cUrl, oSb, "utf-8", "application/json", oResp)
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    oHttp:destroy()
    oSb:destroy()
    oResp:destroy()
    RETURN
ENDIF

? "Response Status Code: " + Str(oResp:StatusCode)

//  Examine the request we sent.
//  The LastHeader property stores the HTTP request header of the most recent request sent,
//  and in this instance, the response body mirrors the request body.
? oHttp:LastHeader
? oResp:BodyStr

//  Output:

//  POST /echo_request_body.asp HTTP/1.1
//  Host: chilkatsoft.com
//  Accept: */*
//  Accept-Encoding: gzip
//  Content-Type: application/json
//  Content-Length: 26
//  
//  {"greeting":"Hello World"}

oHttp:destroy()
oSb:destroy()
oResp:destroy()