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

Example: Http.HttpJson method - Send a POST with JSON Body

See more HTTP Examples

Demonstrates how to call the HttpJson method, which sends an HTTP POST with a JSON body. This 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 oJson
LOCAL cUrl
LOCAL oResp

nSuccess := 0

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

oJson := CreateObject("Chilkat.JsonObject")

//  Build the following JSON:  {"greeting":"Hello World"}
oJson:UpdateString("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 JSON in the HTTP request body.
oResp := CreateObject("Chilkat.HttpResponse")
nSuccess := oHttp:HttpJson("POST", cUrl, oJson, "application/json", oResp)
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    oHttp:destroy()
    oJson: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()
oJson:destroy()
oResp:destroy()