Sample code for 30+ languages & platforms
Perl Requires Chilkat v11.0.0+

Get the Last-Modified Date Before HTTP Download

See more HTTP Examples

Demonstrates how to send a HEAD request to get the last-modified date of a file on a web server (without downloading the file).

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

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

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

$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpNoBody("HEAD","https://www.chilkatsoft.com/hamlet.xml",$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    exit;
}

#  Examine the response header.
print $resp->header() . "\r\n";

#  Here is a sample response header:

#  	Content-Length: 279658
#  	Content-Type: text/xml
#  	Last-Modified: Thu, 12 May 2016 15:14:08 GMT
#  	Accept-Ranges: bytes
#  	ETag: "c1cd8bee60acd11:0"
#  	Server: Microsoft-IIS/8.5
#  	X-Powered-By: ASP.NET
#  	X-Powered-By-Plesk: PleskWin
#  	Date: Thu, 25 Jul 2019 16:40:54 GMT

#  Get the Last-Modified header.
$lastModStr = $resp->getHeaderField("Last-Modified");
#  If the header exists...
if ($resp->get_LastMethodSuccess() == 1) {
    #  Parse the RFC822 format date/time string
    $ckdt = chilkat::CkDateTime->new();
    $ckdt->SetFromRfc822($lastModStr);

    #  If we want to access individual date/time parts (in the local timezone)
    $dt = chilkat::CkDtObj->new();
    $ckdt->ToDtObj(1,$dt);

    print "day/month/year = " . $dt->get_Day() . "/" . $dt->get_Month() . "/" . $dt->get_Year() . "\r\n";
}