Sample code for 30+ languages & platforms
Perl

Example: Http.HttpFile method

Shows how to use the HttpFile method to send an HTTP POST request with the contents of a file as the request body. The example sends the following request:
POST /api/v1/sites/123/deploys HTTP/1.1
Host: example.com
Accept: */*
Accept-Encoding: gzip
Content-Type: application/zip
Content-Length: 123456

[binary data bytes of data.zip]

Also see: Chilkat Http Default and Auto-Filled Headers

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

$http = chilkat::CkHttp->new();

$localFilePath = "C:/example/zips/data.zip";
$url = "https://example.com/api/v1/sites/123/deploys";

# Send a POST with the contents of the file in the binary HTTP request body.
$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpFile("POST",$url,$localFilePath,"application/zip",$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    exit;
}

print "Response Status Code: " . $resp->get_StatusCode() . "\r\n";
print "Response body:" . "\r\n";
print $resp->bodyStr() . "\r\n";