Sample code for 30+ languages & platforms
Visual FoxPro

Load JSON Object from HTTP Response Body

Demonstrates how to load the HTTP response body directly into a JSON object.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loHttp
LOCAL loResp
LOCAL loJson

lnSuccess = 0

loHttp = CreateObject('Chilkat.Http')

loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpStr("GET","https://www.chilkatsoft.com/exampledata/sample.json","","","",loResp)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loResp
    CANCEL
ENDIF

* A JSON object is JSON that begins with "{" and ends with "}"
loJson = CreateObject('Chilkat.JsonObject')

* If we wish to transfer (instead of copy) the JSON from the HttpResponse to the JsonObject, then add the keyword "TakeResponseBody" to UncommonOptions
* This could save memory for extremely large JSON responses.
loResp.UncommonOptions = "TakeResponseBody"

loResp.GetBodyJson(loJson)

loJson.EmitCompact = 0
? loJson.Emit()

* Note: If UncommonOptions contained "TakeResponseBody", then the response BodyStr will now be empty:
? "----"
? loResp.BodyStr

RELEASE loHttp
RELEASE loResp
RELEASE loJson