Skip to content

Commit

Permalink
Use if-last-modified in dev server (#8166)
Browse files Browse the repository at this point in the history
  • Loading branch information
mischnic committed Jun 7, 2022
1 parent f9ac612 commit d629007
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 0 deletions.
1 change: 1 addition & 0 deletions packages/reporters/dev-server/package.json
Expand Up @@ -37,6 +37,7 @@
"@parcel/types": "2.6.0",
"connect": "^3.7.0",
"ejs": "^3.1.6",
"fresh": "^0.5.2",
"http-proxy-middleware": "^2.0.1",
"launch-editor": "^2.3.0",
"mime-types": "2.1.18",
Expand Down
8 changes: 8 additions & 0 deletions packages/reporters/dev-server/src/Server.js
Expand Up @@ -33,6 +33,7 @@ import {getHotAssetContents} from './HMRServer';
import nullthrows from 'nullthrows';
import mime from 'mime-types';
import launchEditor from 'launch-editor';
import fresh from 'fresh';

function setHeaders(res: Response) {
res.setHeader('Access-Control-Allow-Origin', '*');
Expand All @@ -44,6 +45,7 @@ function setHeaders(res: Response) {
'Access-Control-Allow-Headers',
'Origin, X-Requested-With, Content-Type, Accept, Content-Type',
);
res.setHeader('Cache-Control', 'max-age=0, must-revalidate');
}

const SOURCES_ENDPOINT = '/__parcel_source_root';
Expand Down Expand Up @@ -343,6 +345,12 @@ export default class Server {
return;
}

if (fresh(req.headers, {'last-modified': stat.mtime.toUTCString()})) {
res.statusCode = 304;
res.end();
return;
}

return serveHandler(
req,
res,
Expand Down
5 changes: 5 additions & 0 deletions yarn.lock
Expand Up @@ -6095,6 +6095,11 @@ fragment-cache@^0.2.1:
dependencies:
map-cache "^0.2.2"

fresh@^0.5.2:
version "0.5.2"
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==

from2@^2.1.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af"
Expand Down

0 comments on commit d629007

Please sign in to comment.