Perl
Perl
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 Perl Downloads
use chilkat();
$success = 0;
# 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 == 0) {
print $json->lastErrorText() . "\r\n";
exit;
}
$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 == 0) {
print $http->lastErrorText() . "\r\n";
exit;
}
$jsonResp = chilkat::CkJsonObject->new();
$jsonResp->Load($resp->bodyStr());
$jsonResp->put_EmitCompact(0);
print $jsonResp->emit() . "\r\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 . "\r\n";
print "LifeResidualAmount = " . $lifeResidualAmount . "\r\n";