開発中は、HTTP 304 応答を (200 を優先して) 防止し、Connect/Express 静的ミドルウェアがキャッシュをまったく行わずに、ファイルシステムからすべての応答を読み取るようにすると非常に便利です。
maxAge
私は無駄に0と1の値で遊んでみました:
app.use(express.static(__dirname + '/public', { maxAge: 1 }))
開発中は、HTTP 304 応答を (200 を優先して) 防止し、Connect/Express 静的ミドルウェアがキャッシュをまったく行わずに、ファイルシステムからすべての応答を読み取るようにすると非常に便利です。
maxAge
私は無駄に0と1の値で遊んでみました:
app.use(express.static(__dirname + '/public', { maxAge: 1 }))
開発中にこれを行うと、200 の応答が得られます。
var express = require('express');
app = express();
app.use(function(req, res, next) {
req.headers['if-none-match'] = 'no-match-for-this';
next();
});
すべての応答でファイルシステムから読み取ります。リクエストETAGがレスポンスETAGと一致する場合、必要がないため、レスポンスの本文は送信されません。同じハッシュを持つ同じファイルです。これが304応答の仕組みです。
なぜ304応答を防ぎたいのですか?
このソリューションは単なる回避策です。Chrome でキャッシュを無効にすることで、ブラウザ側から問題を解決できます。これは、iOS の Safari など、Chrome 以外で作業する必要がある場合には役に立ちません。