Visual FoxPro
Visual FoxPro
HTTP POST JSON and Parse JSON Response
See more HTTP Examples
Demonstrates how to send a JSON POST and then parse the JSON response.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loJson
LOCAL loHttp
LOCAL loResp
LOCAL loJsonResp
LOCAL lcLifeAmount
LOCAL lcLifeResidualAmount
lnSuccess = 0
* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loJson = CreateObject('Chilkat.JsonObject')
lnSuccess = loJson.LoadFile("qa_data/json/jsonBodyForHttpPost.json")
IF (lnSuccess = 0) THEN
? loJson.LastErrorText
RELEASE loJson
CANCEL
ENDIF
loHttp = CreateObject('Chilkat.Http')
loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpJson("POST","https://test.something.com/XYZ/API/v1/CreditInsuranceCalculator/CalculatePremiums",loJson,"application/json",loResp)
IF (lnSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loJson
RELEASE loHttp
RELEASE loResp
CANCEL
ENDIF
loJsonResp = CreateObject('Chilkat.JsonObject')
loJsonResp.Load(loResp.BodyStr)
loJsonResp.EmitCompact = 0
? loJsonResp.Emit()
* The JSON response to be parsed looks like this:
* {
* "LifeAmount": 513.85,
* "LifeResidualAmount": 123.38,
* "CriticalIllnessAmount": 0,
* "CriticalIllnessResidualAmount": 0,
* "DisabilityAmount": 881.70,
* "PolicyFee": 0.00,
* "PolicyFeeSecondary": 0,
* "PolicyFeeHidden": 50.00,
* "PolicyFeeHiddenSecondary": 0
* }
* We can get the floating point numbers as strings. Then convert to double
* using the appropriate string-to-double conversion for your programming language.
* For example, in C++ use atof. In C# use Convert.ToDouble.
lcLifeAmount = loJsonResp.StringOf("LifeAmount")
lcLifeResidualAmount = loJsonResp.StringOf("LifeResidualAmount")
? "LifeAmount = " + lcLifeAmount
? "LifeResidualAmount = " + lcLifeResidualAmount
RELEASE loJson
RELEASE loHttp
RELEASE loResp
RELEASE loJsonResp