Sample code for 30+ languages & platforms
Visual FoxPro

Fetch Web Pages from Local Cache

See more HTTP Examples

Demonstrates how to keep a local cache to avoid re-fetching web pages.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL loHttp
LOCAL lcHtml

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

loHttp = CreateObject('Chilkat.Http')

*  Define a cache directory and set the number of levels based on the anticipated size of the cache.
loHttp.AddCacheRoot("c:/example/httpCache/")

*  up to 256 sub-directories under the cache root will be created as needed to hold cached GET's.
loHttp.NumCacheLevels = 1

*  Tell the http object to fetch from the cache if possible.
loHttp.FetchFromCache = 1

*  Also tell the http object to update the cache with newly fetched pages.
loHttp.UpdateCache = 1

*  This HTTP GET should result in a cache file getting created.
lcHtml = loHttp.QuickGetStr("https://www.google.com/")
IF (loHttp.LastMethodSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    CANCEL
ENDIF

*  The 1st GET was not from cache:
? "Fetched from cache: " + STR(loHttp.LastFromCache)

*  Fetching again will cause the page to be delivered from our local cache.
lcHtml = loHttp.QuickGetStr("https://www.google.com/")
IF (loHttp.LastMethodSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    CANCEL
ENDIF

*  The 2nd GET is from cache:
? "Fetched from cache: " + STR(loHttp.LastFromCache)

RELEASE loHttp