Concept Flow - HTTP caching headers (ETag, Cache-Control)
Client sends request
Server checks cache headers
Generate ETag for resource
Compare ETag with If-None-Match header
Send 304
Client caches resource
Next request uses cached data if valid
The server uses ETag and Cache-Control headers to tell the client if the resource changed. If not, it sends a 304 status to save bandwidth.