Xbase++
Xbase++
Fetch Web Pages from Local Cache
See more HTTP Examples
Demonstrates how to keep a local cache to avoid re-fetching web pages.Chilkat Xbase++ Downloads
LOCAL oHttp
LOCAL cHtml
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
oHttp := CreateObject("Chilkat.Http")
// Define a cache directory and set the number of levels based on the anticipated size of the cache.
oHttp:AddCacheRoot("c:/example/httpCache/")
// up to 256 sub-directories under the cache root will be created as needed to hold cached GET's.
oHttp:NumCacheLevels := 1
// Tell the http object to fetch from the cache if possible.
oHttp:FetchFromCache := 1
// Also tell the http object to update the cache with newly fetched pages.
oHttp:UpdateCache := 1
// This HTTP GET should result in a cache file getting created.
cHtml := oHttp:QuickGetStr("https://www.google.com/")
IF (oHttp:LastMethodSuccess == 0)
? oHttp:LastErrorText
oHttp:destroy()
RETURN
ENDIF
// The 1st GET was not from cache:
? "Fetched from cache: " + Str(oHttp:LastFromCache)
// Fetching again will cause the page to be delivered from our local cache.
cHtml := oHttp:QuickGetStr("https://www.google.com/")
IF (oHttp:LastMethodSuccess == 0)
? oHttp:LastErrorText
oHttp:destroy()
RETURN
ENDIF
// The 2nd GET is from cache:
? "Fetched from cache: " + Str(oHttp:LastFromCache)
oHttp:destroy()