DataFlex
DataFlex
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 DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoHttp
Variant vResp
Handle hoResp
String sLastModStr
Handle hoCkdt
Variant vDt
Handle hoDt
String sTemp1
Integer iTemp1
Integer iTemp2
Integer iTemp3
Boolean bTemp1
Move False To iSuccess
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatHttp)) To hoHttp
If (Not(IsComObjectCreated(hoHttp))) Begin
Send CreateComObject of hoHttp
End
Get Create (RefClass(cComChilkatHttpResponse)) To hoResp
If (Not(IsComObjectCreated(hoResp))) Begin
Send CreateComObject of hoResp
End
Get pvComObject of hoResp to vResp
Get ComHttpNoBody Of hoHttp "HEAD" "https://www.chilkatsoft.com/hamlet.xml" vResp To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// Examine the response header.
Get ComHeader Of hoResp To sTemp1
Showln sTemp1
// 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.
Get ComGetHeaderField Of hoResp "Last-Modified" To sLastModStr
// If the header exists...
Get ComLastMethodSuccess Of hoResp To bTemp1
If (bTemp1 = True) Begin
// Parse the RFC822 format date/time string
Get Create (RefClass(cComCkDateTime)) To hoCkdt
If (Not(IsComObjectCreated(hoCkdt))) Begin
Send CreateComObject of hoCkdt
End
Get ComSetFromRfc822 Of hoCkdt sLastModStr To iSuccess
// If we want to access individual date/time parts (in the local timezone)
Get Create (RefClass(cComChilkatDtObj)) To hoDt
If (Not(IsComObjectCreated(hoDt))) Begin
Send CreateComObject of hoDt
End
Get pvComObject of hoDt to vDt
Send ComToDtObj To hoCkdt True vDt
Get ComDay Of hoDt To iTemp1
Get ComMonth Of hoDt To iTemp2
Get ComYear Of hoDt To iTemp3
Showln "day/month/year = " iTemp1 "/" iTemp2 "/" iTemp3
End
End_Procedure