Sample code for 30+ languages & platforms
Ruby

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 Ruby Downloads

Ruby
require 'chilkat'

success = false

# 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 == false)
    print http.lastErrorText() + "\n";
    exit
end

# Examine the response header.
print resp.header() + "\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() == true)
    # 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(true,dt)

    print "day/month/year = " + dt.get_Day().to_s() + "/" + dt.get_Month().to_s() + "/" + dt.get_Year().to_s() + "\n";
end