Ruby
Ruby
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 Ruby Downloads
require 'chilkat'
success = false
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
json = Chilkat::CkJsonObject.new()
success = json.LoadFile("qa_data/json/jsonBodyForHttpPost.json")
if (success == false)
print json.lastErrorText() + "\n";
exit
end
http = Chilkat::CkHttp.new()
resp = Chilkat::CkHttpResponse.new()
success = http.HttpJson("POST","https://test.something.com/XYZ/API/v1/CreditInsuranceCalculator/CalculatePremiums",json,"application/json",resp)
if (success == false)
print http.lastErrorText() + "\n";
exit
end
jsonResp = Chilkat::CkJsonObject.new()
jsonResp.Load(resp.bodyStr())
jsonResp.put_EmitCompact(false)
print jsonResp.emit() + "\n";
# 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.
lifeAmount = jsonResp.stringOf("LifeAmount")
lifeResidualAmount = jsonResp.stringOf("LifeResidualAmount")
print "LifeAmount = " + lifeAmount + "\n";
print "LifeResidualAmount = " + lifeResidualAmount + "\n";