Sample code for 30+ languages & platforms
Perl

POST application/x-www-form-urlencoded using REST API

See more REST Examples

Demonstrates how to send a POST with query params (x-www-form-urlencoded) using the Chilkat REST object.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

$rest = chilkat::CkRest->new();

# This example will send to https://www.chilkatsoft.com/echoPost.asp

# Make the initial connection (without sending a request yet).
$bTls = 1;
$port = 443;
$bAutoReconnect = 1;
$success = $rest->Connect("www.chilkatsoft.com",$port,$bTls,$bAutoReconnect);
if ($success != 1) {
    print $rest->lastErrorText() . "\r\n";
    exit;
}

# Provide query params.
$rest->AddQueryParam("firstName","John");
$rest->AddQueryParam("lastName","Doe");
$rest->AddQueryParam("company","Bisco Bits Ltd.");

$responseStr = $rest->fullRequestFormUrlEncoded("POST","/echoPost.asp");
if ($rest->get_LastMethodSuccess() != 1) {
    print $rest->lastErrorText() . "\r\n";
    exit;
}

# When successful, the response status code will equal 200.
if ($rest->get_ResponseStatusCode() != 200) {
    # Examine the request/response to see what happened.
    print "response status code = " . $rest->get_ResponseStatusCode() . "\r\n";
    print "response status text = " . $rest->responseStatusText() . "\r\n";
    print "response header: " . $rest->responseHeader() . "\r\n";
    print "response body (if any): " . $responseStr . "\r\n";
    print "---" . "\r\n";
    print "LastRequestStartLine: " . $rest->lastRequestStartLine() . "\r\n";
    print "LastRequestHeader: " . $rest->lastRequestHeader() . "\r\n";
    exit;
}

print $responseStr . "\r\n";
print "Success." . "\r\n";