Added caching support (304 response)