DataFlex
DataFlex
Fetch Web Pages from Local Cache
See more HTTP Examples
Demonstrates how to keep a local cache to avoid re-fetching web pages.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoHttp
String sHtml
String sTemp1
Boolean bTemp1
// 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
// Define a cache directory and set the number of levels based on the anticipated size of the cache.
Send ComAddCacheRoot To hoHttp "c:/example/httpCache/"
// up to 256 sub-directories under the cache root will be created as needed to hold cached GET's.
Set ComNumCacheLevels Of hoHttp To 1
// Tell the http object to fetch from the cache if possible.
Set ComFetchFromCache Of hoHttp To True
// Also tell the http object to update the cache with newly fetched pages.
Set ComUpdateCache Of hoHttp To True
// This HTTP GET should result in a cache file getting created.
Get ComQuickGetStr Of hoHttp "https://www.google.com/" To sHtml
Get ComLastMethodSuccess Of hoHttp To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// The 1st GET was not from cache:
Get ComLastFromCache Of hoHttp To bTemp1
Showln "Fetched from cache: " bTemp1
// Fetching again will cause the page to be delivered from our local cache.
Get ComQuickGetStr Of hoHttp "https://www.google.com/" To sHtml
Get ComLastMethodSuccess Of hoHttp To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// The 2nd GET is from cache:
Get ComLastFromCache Of hoHttp To bTemp1
Showln "Fetched from cache: " bTemp1
End_Procedure