I\'m experiencing some strange behavior of ExpressJS. On second request to my node.js/express based API URL it always returns 304 Not Modified response code to IE. Other browser
The Cache-Control header is a workaround. The bug is in internet explorer's interpretation of the HTTP 1.1 spec for the header.
I added this to my route handler, which solved the problem. You also need a Last-Modified
or ETag
header, but express was already sending that for me.
res.setHeader("Expires", "-1");
res.setHeader("Cache-Control", "must-revalidate, private");
See: Make IE to cache resources but always revalidate