My Node.js Express API is sending back a 304 Not Modified response code, but in Chrome's network panel, I'm seeing that the response is a 200. Why is that?
When I disable Chrome's cache, I see that the size of the request goes up significantly. Around 1.1 KB when cache is disabled and around 250 B when the cache is enabled. So, it seems pretty clear that the behind the scenes use of ETag/If-None-Match headers is doing its job.
However, I would expect Chrome to show a 304 code, instead of a 200, when its retrieving the API response data from its local cache.