Sample code for 30+ languages & platforms
Rust 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 Rust Downloads

Rust

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

let http = chilkat::Http::new();

let resp = chilkat::HttpResponse::new();
if http.http_no_body("HEAD", "https://www.chilkatsoft.com/hamlet.xml", &resp).is_err() {
    println!("{}", http.last_error_text());
    return;
}

// Examine the response header.
println!("{}", resp.header());

// 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.
// If the header exists...
if let Ok(last_mod_str) = resp.get_header_field("Last-Modified") {
    // Parse the RFC822 format date/time string
    let ckdt = chilkat::DateTime::new();
    let _ = ckdt.set_from_rfc822(&last_mod_str);

    // If we want to access individual date/time parts (in the local timezone)
    let dt = chilkat::DtObj::new();
    ckdt.to_dt_obj(true, &dt);

    println!("day/month/year = {}/{}/{}", dt.day(), dt.month(), dt.year());
}